У меня есть база данных SQL, которая запрашивает данные истории движков. Одна из особенностей заключается в том, что ежедневная хранимая процедура будет осуществлять поиск по всем данным для конкретного события, и если событие будет найдено, оно будет вставляться в новую таблицу.SQL «За исключением» Все еще имеет проблемы
Проблема заключается в том, что эти данные должны быть уникальными ...
заголовки таблицы, как показано ниже:
ID/ID_Location/IDDown/IDUp/DtDown/DtUp/TimeDifference/IsExempt/Reason/Details/OrigDtUp
И SQL запрос:
insert into exempts(ID_Location, iddown, idup, dtdown, dtup, timedifference)
select ID_Location, iddown, idup, dtdown, dtup, DATEDIFF(MINUTE, dtdown, dtup) as timedifference
from @tmptbl
except
select ID_Location, iddown, idup, dtdown, dtup, timedifference from exempts
пользователь способный внести коррективы в некоторые из этих значений, таких как DtUp (Время, когда двигатель возвращается в режиме онлайн). После изменения значения DtUp исходное значение DtUp сохраняется в поле OrigDtUp, а TimeDifference обновляется в соответствии с временным изменением DtDown и DtUp.
Так что мне действительно нужно это:
insert into exempts(ID_Location, iddown, idup, dtdown, dtup, timedifference)
select ID_Location, iddown, idup, dtdown, dtup, DATEDIFF(MINUTE, dtdown, dtup) as timedifference
from @tmptbl
except
select ID_Location, iddown, idup OR OrigDtUp, dtdown, dtup from exempts
Что мы знаем не поддерживается except
функции в SQL ??
Perfect !! Спасибо за вашу помощь!! – neilrudds
Добро пожаловать :-) –