我需要为SQL Server 2005转换下面的以下查询,所以请告诉我应该更改的内容,因为SQL Server不支持DATE_FORMAT()
如何在SQL Server中进行转换,以便在网站上显示正确的日期而不是时间戳(例如:1382016108为2013-06-22 10:53:22)?
SELECT DATE_FORMAT(TimeTransfer,'%Y-%m-%d %h:%i:%s')
FROM PREMIUM where strAccountID = ?, $_SESSION['strAccountID']);
编辑:我检查了CONVERT()
函数,但无法确定我的查询应该如何完全符合我的情况。非常感谢帮助。
答案 0 :(得分:1)
这将有效:
SELECT CONVERT( VARCHAR(20) -- Make sure the output string is long enough
, CAST('1970-1-1' As DateTime) -- The Base Date
+ CAST(TimeTransfer As Float)/(24*60*60)
-- Scale UTC (seconds) to TSQL datetime (days)
-- by dividing by the number of seconds in a day
, 120) -- The format that you want
答案 1 :(得分:0)
检查转换功能。它允许您将格式赋予日期时间值
SELECT CONVERT(VARCHAR(20),TimeTransfer,120)
FROM PREMIUM
WHERE strAccountID = ?, $_SESSION['strAccountID']);
答案 2 :(得分:0)
使用CONVERT()函数
SELECT CONVERT(varchar(20),TimeTransfer,120)
FROM PREMIUM where strAccountID = ?, $_SESSION['strAccountID']);
注意:这以24小时格式提供时间