質問
" OrderH"という注文ヘッダーテーブルがあります。この表には、" OrderDate"という列があります。特定の範囲内の日付の注文を取得しようとしています。 「間」でこれを達成できると思いました。キーワードですが、運がありません。これは、私が気にかけていたSQLです:
select
*
from
OrderH h
where
h.OrderDate between '2009-06-16' and '2009-06-01'
order by
h.OrderDate desc
何が間違っているのですか?
解決
小さい日付が最初でなければなりません
between '2009-06-01' and '2009-06-16'
の代わりに
between '2009-06-16' and '2009-06-01'
また、より大きな日付から真夜中の値を取得し、それ以外の何も取得しないため、間で使用する場合は注意してください
他のヒント
例では最初の日付が2番目の日付より大きいため、クエリは機能しません。日付を入れ替えます。最初は2番目の日付以下でなければなりません。
開始前に終了する日付を見つけるのは困難です。最小値と最大値を変更...
h.OrderDate between '2009-06-01' and '2009-06-16'
select
*
from
OrderH h
where
h.OrderDate between '2009-06-01' and '2009-06-16'
order by
h.OrderDate desc
2009-06-16の午前0時以降に発生するMS-SQL Serverイベントには含まれません。
所属していません StackOverflow