エンジンの履歴データを照会する SQL データベースがあります。機能の 1 つは、ストアド プロシージャが特定のイベントのすべてのデータを毎日検索し、イベントが見つかった場合は、それを新しいテーブルに挿入することです。
問題は、このデータが一意でなければならないことです...
表のヘッダーは次のとおりです。
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
とOrigDtUp
列の両方をチェックし、時間差を無視するクエリが必要です。そのため、レコードは異なり、レコードは元の値で再挿入されますか? ?DtUp
DtUp
OrigDtUp
前もって感謝します!!ニール