アップグレードしたい手順があります。挿入する前に、ピックアップデータテーブルにクライアントの新しいレコードを挿入しています。このクライアントの新しいレコードが今月挿入されたかどうかを確認しています。はいの場合、新しいレコードを挿入していません。
クライアントの StatusID が (1,2,6) かどうかを確認するように更新しようとしています。これまでのところ、私はこれを持っています
alter PROCEDURE dbo.InsertPickup
@ClientID int, --Required ClientID and PickupDate
@PickupDate date
AS
IF NOT EXISTS (SELECT * FROM Pickup
WHERE ClientID = @ClientID
AND MONTH(PickupDate) = MONTH(@PickupDate)
AND YEAR(PickupDate) = YEAR(@PickupDate) )
if exists (select * from clients where statusid in (1,2,6))
INSERT INTO Pickup (ClientID, PickupDate)
VALUES (@ClientID, @PickupDate)
ただし、たとえば statusid = 5 または 3 または 4 のクライアントの場合、まだレコードを挿入するのは正しくありません。