時間を時間範囲と比較したいと思います。その時間範囲がその時間範囲にある場合は、レコードを返す必要があります。例えばSql Server - 24時間形式でのみ時間を比較しますか?
、テーブル「A」があります2016-09-26 02:51:59
:
+-----------+------+-------------+-----------+
| User_Code | Name | Shift_Start | Shift_End |
+-----------+------+-------------+-----------+
| 1 | ABC | 04:01:00 | 11:00:00 |
| 2 | DEF | 11:01:00 | 20:00:00 |
| 3 | XYZ | 20:01:00 | 04:00:00 |
+-----------+------+-------------+-----------+
を今、私は、そのシフトそれは、この特定の日時にあったを確認したいです。 SQLクエリはUser_Code = 3
を返します。 Shift_Start
およびShift_End
は、タイプtime
である。
私は時間に2016-09-26 02:51:59
を変換してからbetween
を使用してshift_start
とshift_end
と比較してlogical operator
を使用して試してみましたが、私は望ましい結果を得ることができません。
これは私を困惑させました。私は解決策を見出そうとしてから1時間が経過していますが、私はそうすることができません。試してグーグルが、そこにも何も得ていない。どんな助けもありがとう。他の角度からのSQL Server 2012
をお試しください:00:00〜04:00:00:00〜04:00:00:00:00:00:00〜00:00:23:59:59 XYZ' – paul
@paul、はい、私は本当にDBの構造を変更したいとは思わないが、これは事をもっと簡単にすることに同意する。 – NewbieProgrammer