【发布时间】:2019-06-07 14:26:20
【问题描述】:
使用Oracle SQL时,为什么会出现select语句
select to_char(to_date('31-DEC-18'), 'YYYY-IW')
from dual;
返回“2018-01”?
我了解“IW”使用 ISO 标准,这是我想要使用的,但据我的研究表明,根据 ISO 标准,2018 年 12 月 31 日发生在 2019 年的第 1 周。所以我明白为什么select语句为'IW'返回'01',但为什么它为'YYYY'返回'2018'?该语句不应该返回'2019-01'吗?
对于我正在使用的数据,最好使用 IW 而不是 WW。
【问题讨论】:
-
文档中没有任何内容表明日期格式的结果是有意义的。格式的每个部分都独立工作。年?现在是 2018 年。iso 周?它是 01。你想把它组合成一个字符串吗?没问题。