1

我正在尝试查询图表日期是系统时间,数据绘制在执行日期时间之后超过 8 小时。

我正在使用以下查询:

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

两列的日期和时间格式均为 2012-12-29 11: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 Server。好吧,我只想说,使用 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 回答