У меня следующий запрос ОБНОВЛЕНИЯ:
UPDATE A
SET A.EARLY_SHIFT =
(SELECT DATEPART(hour, S.SCHED_START - A.FIRST_LOGIN) * 3600
+ DATEPART(minute, S.SCHED_START - A.FIRST_LOGIN) * 60
+ DATEPART(second, S.SCHED_START - A.FIRST_LOGIN) AS Expr1)
FROM DLY_AGT_ACTIVITY AS A
INNER JOIN DLY_AGT_SCHEDULES AS S
ON A.DATE = S.DATE AND RIGHT(A.ID, 5) = RIGHT(S._ID, 5)
Это в Management Studio работает отлично.Однако в моей задаче sql моего пакета служб SSIS он добавляет CROSS JOIN следующим образом:
UPDATE A
SET A.EARLY_SHIFT =
(SELECT DATEPART(hour, S.SCHED_START - A.FIRST_LOGIN) * 3600
+ DATEPART(minute, S.SCHED_START - A.FIRST_LOGIN) * 60
+ DATEPART(second, S.SCHED_START - A.FIRST_LOGIN) AS Expr1)
FROM DLY_AGT_ACTIVITY AS A
INNER JOIN DLY_AGT_SCHEDULES AS S
ON A.DATE = S.DATE AND RIGHT(A.ID, 5) = RIGHT(S._ID, 5) CROSS JOIN A
И это приводит к сбою запроса в моей задаче sql.Что, черт возьми, происходит?
* Я пробовал работать без псевдонимов, и это не помогло.