2013-10-13 88 views
0

我有以下的数据库架构 事实(ReportNo,REPORTNAME,Load_Date)从日期列SQL计算周数

Load_Date是(型)的柱,并在 记录日期YYYYMMDD格式。

我需要使用Load_Date中已有的日期 来打印每一行的星期编号。由于它已经是类型号码,我不必将它从日期转换为字符。

输出应该是 ** Week Number | ReportNo | REPORTNAME

+1

请定义 '周数' - ISO周的一年?每周(从1月1日起每7天一次)?每月中的哪一周?或者是其他东西?另外,请注意,以数字格式存储日期需要麻烦 - 您放弃了内置的有效性检查,而不必介意日期/时间并非如此。实际上,除了“每月的星期几”(基于月初以来的天数)之外的任何“星期数”计算都需要翻译成“日期”类型,除非你想做一些绝对疯狂的数学计算你自己(20130228之后的下一个值是20130301) –

回答

0

尝试

select ReportNo,ReportName,to_char(to_date(Load_Date,'yyyymmdd'),'ww') from Facts 
+0

值得注意的是to_char(,'ww')的结果是依赖于语言环境的。 –