【发布时间】:2014-09-06 15:52:34
【问题描述】:
如何在 Oracle 数据库中选择儒略日?
我试过了: 从对偶中选择 to_char(sysdate, 'J'); 这给了我自公元前 4712 年 1 月 1 日以来的天数。但我需要自 1.1 以来的天数。当年的。
【问题讨论】:
标签: sql oracle julian-date
如何在 Oracle 数据库中选择儒略日?
我试过了: 从对偶中选择 to_char(sysdate, 'J'); 这给了我自公元前 4712 年 1 月 1 日以来的天数。但我需要自 1.1 以来的天数。当年的。
【问题讨论】:
标签: sql oracle julian-date
如果您查看TO_CHAR (datetime) 文档,您将获得指向"Format Models" 的链接,其中包含可用格式的完整列表。我猜你想要这个:
DDD一年中的某天 (1-366)
【讨论】:
SELECT TO_CHAR(SYSDATE, 'DDD') from DUAL;
【讨论】:
一种方法是使用:
select sysdate - trunc(sysdate,'yyyy') from dual
'Trunc' 删除除年份以外的所有内容并返回 01/01/2014,减去 sysdate 返回自 1 月 1 日以来的天数。
【讨论】:
+1,因为您的表达式从0开始计算天数
使用sql select trunc(sysdate)+1 - trunc(sysdate,'yyyy') from dual。你会得到一个偶数
【讨论】: