2015-02-12 63 views
1
SELECT DateAdded, 
    CAST(DateAdded AS date USING 'mm:dd') AS MonthDay 
FROM Products; 

继续收到“AS”错误。我需要帮助使用CAST才能返回月/日

+3

你正在使用哪个数据库 – 2015-02-12 01:36:21

+0

你不能使用'USING',我在想你正在寻找一种像date_format的方法 – 2015-02-12 01:39:41

+0

SELECT date_format(DateAdded,'%m:%d')AS MonthDay – 2015-02-12 01:41:36

回答

1

使用MonthDay函数从日期类型中提取monthday。尝试这个。

SELECT DateAdded,  
     Convert(varchar(2),month(DateAdded))+':'+ 
       Convert(varchar(2),Day(DateAdded)) As MonthDay 
FROM Products; 

convert使用101风格和更换/:

SELECT DateAdded,  
     Replace(Left(Convert(varchar(20),DateAdded,101),4),'/',':') As MonthDay 
FROM Products; 

或者Datepart

SELECT DateAdded,  
     Convert(varchar(2),Datepart(Month,DateAdded))+':'+ 
       Convert(varchar(2),Datepart(Day,DateAdded)) As MonthDay 
FROM Products; 
1

这里是一个可能的解决方案使用投

SELECT 
    DateAdded, 
    CAST(DateAdded AS date) AS Date, 
    CAST(DateAdded AS time) AS Time, 
    right('0' + cast(month(DateAdded) as varchar(2)),2) + ':' 
     + right('0' + cast(day(DateAdded) as varchar(2)),2) AS MonthDay 
FROM Products