テーブルに2つのDateTime列、ArrivalDateTime、DepartureDateTimeがあり、値は「26/11/2012 00:00:00」、「28/11/2012 00:00:00」のようになっています。ここで、このテーブルからすべてのレコードを検索します。ここで、特定の日付は、TSqlを使用してそれらの日付の間に2012年11月27日が存在すると言います
質問する
15554 次
3 に答える
5
あなたが使用することができますBETWEEN
:
SELECT * FROM table
WHERE '2012-11-27' BETWEEN ArrivalDateTime AND DepartureDateTime
于 2012-11-29T01:12:07.317 に答える
1
これを試して。
DECLARE @GivenDate VARCHAR(10)
SET @GivenDate = '27/11/2012'
SELECT * FROM myTable WHERE CONVERT(DATETIME, ArrivalDateTime, 103) < CONVERT(DATETIME, @GivenDate, 103) AND CONVERT(DATETIME, DepartureDateTime, 103) > CONVERT(DATETIME, @GivenDate, 103)
到着日と出発日を含めたい場合。
SELECT * FROM myTable WHERE CONVERT(DATETIME, ArrivalDateTime, 103) <= CONVERT(DATETIME, @GivenDate, 103) AND CONVERT(DATETIME, DepartureDateTime, 103) >= CONVERT(DATETIME, @GivenDate, 103)
時間ではなく日付のみを比較したい場合は、これを試してください。
SELECT * FROM myTable WHERE CONVERT(DATE, ArrivalDateTime, 103) <= CONVERT(DATE, @GivenDate, 103) AND CONVERT(DATE, DepartureDateTime, 103) >= CONVERT(DATE, @GivenDate, 103)
于 2012-11-29T06:24:27.240 に答える
0
あなたはこれで試すことができます:
select * from MYTABLE where ArrivalDateTime < '2012-11-27' and DepartureDateTime > '2012-11-27'
于 2012-11-29T01:14:49.147 に答える