如何将MySQL转换为SQL Server查询以显示时间戳的正确日期?

时间:2013-10-17 12:23:02

标签: sql-server timestamp

我需要为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()函数,但无法确定我的查询应该如何完全符合我的情况。非常感谢帮助。

3 个答案:

答案 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小时格式提供时间

See this link for Date formats in SQL Server