Sql-Server-2012
獲取開始和結束日期時間之間的日期時間
Start_Date End_Date 2019-09-10 17:48:00.000 2019-09-10 18:00:00.000 2019-09-10 17:00:00.000 2019-09-10 17:45:00.000 2019-09-10 17:30:00.000 2019-09-10 18:00:00.000 2019-09-11 08:00:00.000 2019-09-11 09:30:00.000 2019-09-11 08:30:00.000 2019-09-11 09:30:00.000 2019-09-11 12:00:00.000 2019-09-11 13:00:00.000 2019-09-11 12:30:00.000 2019-09-11 13:15:00.000 2019-09-11 12:15:00.000 2019-09-11 13:15:00.000
如果我在查詢中通過 Start_Date 和 End_Date 例如 Start_Date = ‘2019-09-11 12:00.000’ 和 End_Date=‘2019-09-11 13:15.000’
預期結果:
Start_Date End_date 2019-09-11 12:00:00.000 2019-09-11 13:00:00.000 2019-09-11 12:30:00.000 2019-09-11 13:15:00.000 2019-09-11 12:15:00.000 2019-09-11 13:15:00.000
完全重疊:
SELECT * FROM source WHERE Start_Date >= '2019-09-11 12:00.000' AND End_Date <= '2019-09-11 13:15.000'
部分重疊(不只是相鄰,對於相鄰替換強不等式
>
並>
用安全的>=
和<=
):SELECT * FROM source WHERE End_Date > '2019-09-11 12:00.000' AND Start_Date < '2019-09-11 13:15.000'
請檢查此解決方案:
SELECT * FROM TABLE WHERE Start_Date BETWEEN '2019-09-11 12:00.000' and '2019-09-11 13:15.000' AND End_Date BETWEEN '2019-09-11 12:00.000' and '2019-09-11 13:15.000'