首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Oracle将时间戳列分类为15分钟桶

Oracle将时间戳列分类为15分钟桶
EN

Stack Overflow用户
提问于 2020-10-22 16:39:44
回答 1查看 193关注 0票数 2

我正在编写一个SQL查询,将我的时间戳列中的一个分类为15分钟桶。我做了一些研究,并尝试了多种方法,但我没有得到预期的结果。

代码语言:javascript
复制
SELECT
dd,
trunc(dd) + ROUND(TO_CHAR(dd,'SS')/900)/96 as round_1,
trunc(dd, 'hh24') + ROUND(to_char(dd, 'MI')/15)*15/1440 as round_2,
trunc(dd, 'mi') - mod(EXTRACT(minute FROM cast(dd as timestamp)), 15) / (24 * 60) as round_3,
to_char(trunc(dd,'hh') + (15*round(to_char(trunc(dd,'MI'),'MI')/15))/1440,'YYYY-MM-DD hh24:mi:ss') as round_4
FROM
Table  

当我执行上述查询时,我会看到以下结果。

预期结果是

*编辑,根据戈登的答复更新问题

EN

回答 1

Stack Overflow用户

发布于 2020-10-22 16:45:56

Oracle没有datetime数据类型。如果列是时间戳(如代码所示),则可以使用以下逻辑:

代码语言:javascript
复制
select trunc(current_timestamp, 'HH24') + floor(extract(minute from current_timestamp) / 4) * interval '15' minute
from dual
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64486716

复制
相关文章

相似问题

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