首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在oracle sql中获取小时和分钟?

如何在oracle sql中获取小时和分钟?
EN

Stack Overflow用户
提问于 2014-10-30 11:16:06
回答 2查看 27.1K关注 0票数 3

我想分别获取和显示日期、小时和分钟(3列:日期、小时和分钟)

我的脚本不起作用。如何解决这个问题?谢谢

下面是sql语句:

代码语言:javascript
复制
 select trunc(t.create_time, 'DD') as createdate
            ,trunc(t.close_time, 'DD') as closedate
            ,datepart(hour, t.close_time()) as hours
            ,datepart(minute, t.close_time()) as minutes
            ,count(t.close_time) as total
      from app_account.otrs_ticket t
      left join app_account.otrs_user u
      on t.create_user_id=u.id
      where u.id not in (15,7,31,49,50,52,62,66,69,106,17,24,44,32,33,55,22,29,30,47,45,53,70,74,109,1,2,10,23,68,80,20,21,56,108,67)
      group by trunc(t.create_time, 'DD')
              ,trunc(t.close_time, 'DD')
              ,datepart(hour, t.close_time())
              ,datepart(minute, t.close_time())
      order by trunc(t.create_time, 'DD') desc
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-10-30 11:23:16

我发现to_char()函数在转换和提取日期部分方面是最灵活的。

下面是一个从sysdate中提取各种元素的示例:

代码语言:javascript
复制
select to_char(sysdate, 'YYYY') as year, 
       to_char(sysdate, 'MM') as month, 
       to_char(sysdate, 'DD') as day,
       to_char(sysdate, 'HH24') as hour,
       to_char(sysdate, 'MI') as minute
from dual

您可以提供不同的格式参数来获得所需的任何结果。

票数 8
EN

Stack Overflow用户

发布于 2014-10-30 11:19:41

Oracle函数是extract()to_char()

代码语言:javascript
复制
 select trunc(t.create_time, 'DD') as createdate,
        trunc(t.close_time, 'DD') as closedate,
        extract(hour from t.close_time) as hours,
        extract(minute from t.close_time) as minutes,
        count(t.close_time) as total
 from app_account.otrs_ticket t left join
      app_account.otrs_user u
      on t.create_user_id=u.id
 where u.id not in (15,7,31,49,50,52,62,66,69,106,17,24,44,32,33,55,22,29,30,47,45,53,70,74,109,1,2,10,23,68,80,20,21,56,108,67)
 group by trunc(t.create_time, 'DD'), trunc(t.close_time, 'DD')
          extract(hour from t.close_time) as hours,
          extract(minute from t.close_time) as minutes
 order by trunc(t.create_time, 'DD') desc;

我不确定close_time之后的()是什么,但它们似乎没有必要。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26644466

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档