1

COALESCE を使用して null 以外の日付を選択する SQL クエリがあります。

SELECT ...
WHERE 
  COALESCE (date1, date2 ) >= '06/11/2013' AND
  COALESCE (date1, date2 ) <= '06/11/2013' 

問題は、date1 がタイムスタンプで、date2 が日付であることです。したがって、date1 に値がある場合:

  06/11/2013 11:00:00

IT は where 句で呼び出されません。すなわち:

 COALESCE (date1, date2 ) >= '06/11/2013' ==> TRUE
 COALESCE (date1, date2 ) <= '06/11/2013' ==> FALSE

時間が換算されているからだと思います。

  06/11/2013 00:00:00

「2013 年 6 月 11 日」を変換して、date1 と date2 の値が時刻に関係なく上記のクエリが true になるようにするにはどうすればよいですか? 時間ではなく、曜日だけが気になります。

4

1 に答える 1