1
エンジンの履歴データを照会するSQLデータベースがあります。この機能の1つは、ストアドプロシージャが毎日特定のイベントのすべてのデータを検索し、イベントが見つかった場合は新しいテーブルに挿入することです。SQL "Except"まだ問題があります
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の時間変化に従って更新される。
だから私は本当に必要なものは以下です:
我々はSQLでexcept
機能によってサポートされていません知っている
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
?
完璧!ご協力いただきありがとうございます!! – neilrudds
あなたは大歓迎です:-) –