2017-04-05 53 views
0

我有一个包含星期编号的列。而不是从年初开始的周数,我想每周添加53通过sql在列中添加数字

例如,一月的第二个星期将是2周,但我想它显示为Week 55 (53+2).

select week(cs.subscribeddate)+53 as sub_week 
from Test 
where 1 

我在哪里错了?

+0

SQL-Server或MySQL或PostgreSQL?请删除不兼容的标签 – Jens

+0

不要标记不涉及的产品......您使用MySQL,MS SQL Server或Postgresql吗? (每个人都会有不同的答案......) – jarlh

+0

您正在使用哪种RDBMS?标签仅相关 –

回答

0

如果您正在使用SQL Server,然后下面的解决方案

select DATEPART (week , getdate()) +53 as sub_week 
0

使用的问题就在这里:

select week(cs.subscribeddate)+53 as sub_week 
from Test 
where 1 

在上面你获取乌尔用表的别名列,但没有别名定义上面的查询。此外,在SQL Server,使用DatePart请执行下列操作以得到它的工作:

SELECT DATEPART(week, cs.subscribeddate) + 53 as sub_week 
FROM Test cs 

没有别名,查询将是:

SELECT DATEPART(week, subscribeddate) + 53 as sub_week 
FROM Test