2017-08-31 16 views
1

StartDate1、EndDate1、StartDate2、EndDate2の2つの時間があります。SQL Serverで時刻の競合が発生する

StartDate1 = 10:30 AM 
EndDate1 = 12:00 PM 
StartDate2 = 9:00 AM 
EndDate2 = 10:30 AM 

ここで、SQLクエリを介して、時間が重複しているかどうかをチェックします。私にSQLクエリを教えてください。ありがとう

+2

時間帯が重なっている: 'EndDate1> = StartDate2とEndDate2> = StartDate1' – Phylogenesis

答えて

2

私はすべての4つの列が同じテーブルにあると仮定します。
だから、単にこのようにそれらを選択することができ、次の述語が真であるとき

SELECT * 
    FROM yourtable 
WHERE StartDate2 BETWEEN StartDate1 AND EndDate1 
    OR EndDate2 BETWEEN StartDate1 AND EndDate1 
    OR StartDate1 BETWEEN StartDate2 AND EndDate2 
    OR EndDate1 BETWEEN StartDate2 AND EndDate2 
関連する問題