私は、DATETIMEフィールドが2つ、OpeningDateとFinishingDateのテーブルを持っています。SQLは、すべてのレコードを別の日付よりも先に(月末まで)返す
私は、OpeningDateから正確に16ヶ月先のFinishingDateを持つすべてのレコードを返すクエリを作成しようとしています。
SELECT * FROM Sales
WHERE FinishingDate = DATEADD(MONTH, 16, OpeningDate)
をしかし、私に、私はそれが最後まですべてのレコードを取得する必要があります(唯一の月の日まで)これらの日付の間に入るすべてのレコードを与えるために表示されます。
私が試してみました今月の。
したがって、2017年から10年(2017-04-06)の182カ月先のOpeningDateがあるとします。これには4月6日までのレコードのみが含まれますので、4月末までにレコードを含める必要があります。
これを達成するためにクエリにどのような変更を加えることができますか?
助けがあれば助かります。
ありがとうございます!
テーブル構造をデータとともに表示してください。 –
EOMONTHを使用してOpeningDateを月末に変換します。SELECT * FROM Sales OpeningDateとDATEADDの間のFinishingDate(MONTH、16、EOMONTH(OpeningDate)) – EagerToLearn