開始日と終了日フィールドを保持する mysql のテーブルがあります。私がする必要があるのは、このテーブルにクエリを実行して、検索対象の日付と一致しないすべての行を見つけることです。どうすればいいですか?したがって、今日の日付を使用してこのテーブルをクエリした場合、この日付がテーブルの開始日と終了日の間にないすべての行を見つける必要があります。それが理にかなっていることを願っています!
質問する
1231 次
4 に答える
3
句を使用BETWEEN
して、日付範囲に基づいてレコードをフィルタリングし、その日付範囲を除外するには、次のようにNOT
句を使用できます。
SELECT *
FROM my_table
WHERE search_date NOT BETWEEN start_date AND end_date;
于 2012-07-31T10:01:22.933 に答える
0
Select *
from table
where [todaysdate]<datestart
or [todaysdate]>dateend
于 2012-07-31T09:56:59.673 に答える
0
通常使用する範囲を選択するには を使用BETWEEN
し、それらの値を除外する場合は、単純に を使用できますNOT BETWEEN
。
于 2012-07-31T09:57:23.720 に答える
0
もう 1 つのバリアント:
select id, start_date, end_date
from my_table
where end_date < CAST('2012-01-01' AS DATE)
or start_date > CAST('2012-12-31' AS DATE)
于 2012-07-31T10:05:41.853 に答える