フィールドがtimeout
とtimein
のテーブルがあります。別の日にtimeout
があるレコードのリストをtimein
に返す必要があります。どうすればこれを達成できますか?その後、SQLクエリ:SQL DateTimeから 'day'値を見つける
select *
from table
where DAY(timeout) <> DAY(timein0)
または
がselect *
from table
where DATEPART(day,timeout) <> DATAPART(day,timein) or
が動作します。..
場合は、しかし、彼らは異なるヶ月であることができ、:両方の日付は、その後、同月内にある場合
次の日の時間NOTEをしたい場合:これらの例はどちらも "与えます月の日 "と呼ばれる。 1月1日から2月1日になるデータがある場合、この方法は失敗します。極端な問題や問題のあるケースであっても、(可能な限り)* 1ヶ月に一度もデータを伸ばさない*保証*することができます。 DATEDIFF *のさまざまな使用方法はこの問題の影響を受けません。 – MatBailie
fair point、answer updated – StevieG
私はまだ他の答えも残しておきますが、その動作に注意してください。 DAY(タイムアウト)<>データが適切に動作する場合、DAY(timein)はきれいです。 – MatBailie