将 current_date 转换为相对日期和静态时间
Posted
技术标签:
【中文标题】将 current_date 转换为相对日期和静态时间【英文标题】:Converting current_date to relative day and static time 【发布时间】:2013-01-21 10:15:23 【问题描述】:是否可以在 SQL 中放置相对/静态日期和时间?
我想得到昨天和前天的结果。
所以假设日期介于 (current_date-2 06:00:00) 和 (current_date-1 06:00:00) 之间。从 24 小时范围内获取结果,但具有特定时间。 由于我将其用于 BI 工具,因此只能接受普通 SQL。
【问题讨论】:
【参考方案1】:你可以使用
between trunc(sysdate) - 2 + 6/24 and trunc(sysdate) - 1 + 6/24
6/24 意味着六个小时,因为在 Oracle 1 中是一天。
【讨论】:
+1,但我可能想使用trunc(sysdate) - interval '2' day + interval '6' hour
。我认为它比使用6/24
更清晰一些,也更容易构建不太整洁的时间,例如+ interval '6:15' hour to minute
(尽管这似乎不是问题)。
@AlexPoole 你说得对,ANSI 更好,这只是我的一个坏习惯。以上是关于将 current_date 转换为相对日期和静态时间的主要内容,如果未能解决你的问题,请参考以下文章
将 datetime64[ns] 索引转换为日期 pandas 以进行比较
将 CURRENT_DATE 或 UNIX_TIMESTAMP 转换为 Hive 中的字符串(YYYY-DD-MM 格式)