我有一个日期专栏现在我想写" S"当有星期日时,如果我有这样的数据
datecolumn
1-1-2017
2-1-2017
3-1-2017
4-1-2017
5-1-2017
6-1-2017
7-1-2017
8-1-2017
9-1-2017
10-1-2017
11-1-2017
12-1-2017
13-1-2017
在这个如果日期是星期天那么如何写" Sun"而是像这样的日期
select datecolumn from table1
datecolumn
1-1-2017
2-1-2017
3-1-2017
Sun
5-1-2017
6-1-2017
7-1-2017
8-1-2017
9-1-2017
10-1-2017
Sun
12-1-2017
13-1-017
答案 0 :(得分:1)
如果您使用的是SQL Server 2012+,请使用IIF语句。
select
IIF(DATEPART(DW, DateVal) = 1, 'Sun', Convert(varchar(12), datecolumn, 103)) AS datecolumn
from tableName
答案 1 :(得分:0)
尝试这样的事情:
SELECT CASE WHEN DATEPART(DW, datecolumn) = 1 THEN 'Sun' ELSE CAST(datecolumn AS NVARCHAR(MAX)) END AS datecolumn
FROM table1
希望它有所帮助。
PS - 如果您需要特定日期格式的日期,则可能需要将CAST(datecolumn AS NVARCHAR(MAX))
修改为CONVERT
。