別のテーブルの日付が今日より少なくとも6か月前の場合、あるテーブルからいくつかのデータを選択したいと思います。次のようなことを試してみました
。6か月を超える場合はSQLServerからレコードを選択します
が、エラーが発生します。サブクエリが複数の値を返しました。サブクエリが=、!=、<、<=、>、> =の後に続く場合、またはサブクエリが式として使用される場合、これは許可されません。
これを承認する私の方法は次のとおりです。
SELECT FCIF, [Date], [Desc]
FROM tblFCIF
WHERE tblFCIF.FCIF =
(SELECT FCIFSignOff.FCIF
FROM FCIFSignOff
WHERE ID='12'
AND (DateDiff(month,SignOffDate,GetDate()) > 0) )
したがって、最後の行がないこのコードは、IDが12のすべてを選択します。6か月以上前のすべてを取得する必要があります。
DATEDIFF(datepart,startdate,enddate)
'month'が時間帯にある場合、月の差を返します。