SQL Server查询:从datetime转换为dd / mm / yyyy

时间:2014-07-02 11:15:47

标签: sql sql-server datetime

我查询最大日期时间以从另一个围绕公共ID列表的表中引入最新记录。不过我想用标准的英国dd / mm / yyyy格式来格式化这个日期时间。我该怎么办?我似乎无法得到这个......

这是我的代码:

    (SELECT TOP 1 MemberPayments.CoverFinishDay
FROM
    Members LEFT JOIN MemberPayments
        ON Members.MemberID = MemberPayments.MemberID
        AND CoverFinishDay = (
            SELECT MAX(CoverFinishDay)
            FROM MemberPayments
            WHERE Members.MemberID = MemberPayments.MemberID
        ))

CoverFinishDay存储在标准的美国日期时间。目前查询工作正常,格式错误。我需要输出dd / mm / yyyy

2 个答案:

答案 0 :(得分:0)

如果您使用的是SQL Server 2012,则可以使用FORMAT函数转换任何日期。在你的情况下你可以这样做:

SELECT FORMAT (MemberPayments.CoverFinishDay, 'd', 'en-GB')

您可以访问页面:http://msdn.microsoft.com/en-us/library/hh213505(v=sql.110).aspx

答案 1 :(得分:0)

这将对您有所帮助:

SELECT CONVERT(VARCHAR, GETDATE(), 105)

这适用于SQL Server