1

グラフの日付が、データがグラフ化されたシステム時刻であり、実行日時から8時間以上経過しているというクエリを実行しようとしています。

私は次のクエリを使用しています:

 select * from pat_results where app_type like 'L' and (chart_dt_utc > perform_dt_utc +8) 

両方の列の日付と時刻の形式は2012-12-2911:44:00です。

+8は正しいですか?

4

2 に答える 2

1

いいえ、+8は8を追加します。あなたが欲しい:

select * from pat_results where app_type like 'L' and datediff(hour, chart_dt_utc, perform_dt_utc) > 8 

編集:ああ。どういうわけか、SQLサーバーを使用していると思いました。さて、RDBMSに存在する同等のものを使用してください。

編集2:Oracleでは、次のことができます。

select * from pat_results where app_type like 'L' 
  and (chart_dt_utc > perform_dt_utc + (8 / 24))
于 2013-02-12T02:00:20.623 に答える
1

いいえ。日付に数値を追加できるデータベースでは、数値は日数で測定されます。

追加する値は8/24.0です。一部のデータベースは8/24を整数として計算し、0を返すため、小数点以下の桁数を含めます。

于 2013-02-12T02:00:24.927 に答える