[oracle]添加 weekno 为 2 年的数据

标签: sql Oracle
发布时间: 2017/4/15 18:29:19
注意事项: 本文中文内容可能为机器翻译,如要查看英文原文请点击上面连接.

如何添加 weekno 为两年的数据,记录在第二年应该开始从 54,第一年有 53 个星期的 weekno。

我用

to_char(to_date(TRANSDATE, 'dd-mm-yyyy'), 'WW+53') as weekno

但它似乎并没有工作

解决方法 1:

to_number(to_char(to_date(TRANSDATE, 'dd-mm-yyyy'), 'WW'))+53 as weekno

但更好的使用 IYYY 和 IW 适当周编号。

case to_number(to_char(to_date(TRANSDATE, 'dd-mm-yyyy'), 'IYYY')) 
  when 2012 then to_number(to_char(to_date(TRANSDATE, 'dd-mm-yyyy'), 'IW'))
  when 2013 then to_number(to_char(to_date(TRANSDATE, 'dd-mm-yyyy'), 'IW')) + 52
end as weekno
官方微信
官方QQ群
31647020