3

我需要以下查询转换为 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()功能,但在我的查询中找不到它应该是怎样的。非常感谢您的帮助。

4

3 回答 3

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
于 2013-10-17T13:17:59.147 回答
0

检查转换功能。它允许您为日期时间值提供格式

SELECT CONVERT(VARCHAR(20),TimeTransfer,120) 
FROM PREMIUM
WHERE strAccountID = ?, $_SESSION['strAccountID']);
于 2013-10-17T12:26:53.087 回答
0

使用 CONVERT() 函数

SELECT CONVERT(varchar(20),TimeTransfer,120)
FROM PREMIUM where strAccountID = ?, $_SESSION['strAccountID']);

注意:这给出了 24 小时格式的时间

请参阅此链接以了解 SQL Server 中的日期格式

于 2013-10-17T12:27:59.647 回答