gpt4 book ai didi

oracle - 如何获得两个日期之间的小时差?

转载 作者:行者123 更新时间:2023-12-04 16:29:45 27 4
gpt4 key购买 nike

我必须做一个“选择”,返回数据库中日期类型的字段与当前日期之间的差异(以小时为单位)。我怎么能在oracle中做到这一点?

我试试这个:

   select 24 * (to_date(sysdate, 'YYYY-MM-DD hh24:mi') 
- to_date('2012-02-28 15:20', 'YYYY-MM-DD hh24:mi')) diff_hours
from dual;

但这没有用。

最佳答案

错误是因为 SYSDATE 已经是一个日期,没有必要使用 TO_DATE()将其转换为日期。

如果您不将其转换为日期:

select
24 * (sysdate - to_date('2012-02-28 15:20', 'YYYY-MM-DD hh24:mi')) as diff_hours
from dual;

如果日期格式错误,您可以使用以下两个步骤:
select
24 * (to_date(to_char(sysdate, 'YYYY-MM-DD hh24:mi'), 'YYYY-MM-DD hh24:mi') - to_date('2012-02-28 15:20', 'YYYY-MM-DD hh24:mi')) as diff_hours
from dual;

关于oracle - 如何获得两个日期之间的小时差?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9488475/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com