2

結果が得られない場合、T1 と T2 の 2 つの日付の間の要素を取得する SQL クエリを作成したいのですが、これらの日付の外で結果を取得したいと考えています。SQLのみを使用して行うにはどうすればよいですか

select * from myTable where tmp >= T1 and tmp <= T2
select * from myTable where tmp < T1 or tmp > T2
4

2 に答える 2

0

以下のクエリで問題を解決できます。

SELECT * 
FROM myTable 
WHERE
(tmp BETWEEN T1 AND T2)
OR
((tmp < T1 OR tmp > T2) AND (tmp NOT BETWEEN T1 AND T2))
于 2013-10-04T10:00:24.693 に答える
0

次のようなクエリが機能するはずです。

(select * from myTable where tmp >= T1 and tmp <= T2)
UNION 
(select * from myTable WHERE NOT EXISTS (select 1 from myTable where tmp >= T1 and tmp <= T2) AND tmp < T1 or tmp > T2)

これまでに提供された詳細を考慮すると、これはテストされていません。

于 2013-10-04T09:12:39.290 に答える