SQL Server 2005 Express のこれら 2 行の違いは何ですか?
DATEADD(d, 0, DATEDIFF(d, 0, @Today));
と
DATEADD(d, DATEDIFF(d, 0, @Today), 0);
このステートメントをランダムに失敗させる以外は、次のようにします。
DECLARE @DateSrc DATETIME;
-- Chop off the time part:
SET @DateSrc = DATEADD(d, 0, DATEDIFF(d, 0, @Today));
INSERT INTO dbo.SeqNo(MyGUID, TheDay, LastNo)
SELECT @MyGUID, @DateSrc, 0
WHERE NOT EXISTS (
SELECT 1 FROM dbo.SeqNo AS sn
WHERE sn.MyGUID = @MyGUID AND sn.TheDay = @DateSrc
);