Ошибка в обновлении оператора SQL (несколько столбцов и несколько таблиц)

Я не могу найти ошибку этого оператора SQL:

update temptable2
set dep5 = stt.departureTime,
    arv4 = stt.departureTime,
    dur4 = arv4-dep4,
    arv5 = dur5+dep5
from temptable2 as tt
join stoptimetable as stt on stt._tripID = tt.dur4 
                          and stt._stopID = tt.id5 
                          and stt.stopSequence = tt.dep5

Ошибка:

Ошибка SQL: рядом с "от": синтаксическая ошибка

Я полностью прочитал эту страницу, но не смог найти ошибку

2 ответа

CREATE TABLE [dbo].[stoptimetable](
    [_tripID] [int] NULL,
    [_stopID] [int] NULL,
    [stopSequence] [int] NULL,
    [departureTime] [int] NULL
) ON [PRIMARY]

CREATE TABLE [dbo].[temptable2](
    [dep5] [int] NULL,
    [arv4] [int] NULL,
    [dur4] [int] NULL,
    [arv5] [int] NULL,
    [id5] [int] NULL,
    [dep4] [int] NULL,
    [dur5] [int] NULL
) ON [PRIMARY]

update temptable2
set dep5 = stt.departureTime,
    arv4 = stt.departureTime,
    dur4 = arv4-dep4,
    arv5 = dur5+dep5
from temptable2 as tt
join stoptimetable as stt on stt._tripID = tt.dur4 
                          and stt._stopID = tt.id5 
                          and stt.stopSequence = tt.dep5

(Затронуто 0 строк)

Это компилируется и запускается. Мне нужна ваша схема для дальнейшего поиска ошибок.

Вы пытаетесь обновить temptable2, но эта таблица не является одной из таблиц, на которые вы ссылались; есть только tt а также stt,

Измените ваш запрос на update tt ...

Когда вы создаете псевдоним таблицы, это имя таблицы для запроса. Настоящее имя таблицы не подлежит оценке.

Другие вопросы по тегам