在SQL中选择日期查询

时间:2017-07-25 12:18:39

标签: sql-server date select

我有一个日期专栏现在我想写" 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

2 个答案:

答案 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