分類:[データベース全般]
開発環境
OraceleServer 12c Release 12.1.0.1.0
OracleClient 11g Release 11.2.0.1.0
Windows7 32bit
以下のようなテーブルがあり、
同一の社員、作業日で開始時刻〜終了時刻の範囲が被るデータを検索したいのですが、
日付をまたいでいることもあり、方法が分かりませんでした。
どなたかアドバイスをお願い致します。
テーブル名(T_KINTAI)IDはNUMBER型、それ以外はVARCHAR2型となっています。
ID | 社員CODE | 作業日 |開始時間|終了時間
1|A001 |20180301 |0100 |0800
2|A001 |20180301 |2200 |0800
3|A001 |20180301 |2300 |0100
4|A002 |20180301 |0845 |1715
5|A002 |20180301 |1710 |2200
6|A003 |20180301 |0845 |1830
7|A003 |20180301 |2200 |0400
検索結果
ID | 社員CODE | 作業日 |開始時間|終了時間
2|A001 |20180301 |2200 |0800
3|A001 |20180301 |2300 |0100
4|A002 |20180301 |0845 |1715
5|A002 |20180301 |1710 |2200
ID3の開始時間、終了時間共にID2の開始時間、終了時間の範囲内なので出力対象
ID5の開始時間がID4の開始時間、終了時間の範囲内なので出力対象
|