在SQL Server中将日期返回为ddmmyyyy

时间:2011-07-21 01:57:08

标签: sql-server sql-server-2005 date-formatting

我需要ddmmyyyy的日期,没有任何间隔符。

我该怎么做?

我可以使用yyyymmdd

获取CONVERT(VARCHAR, [MyDateTime], 112)

但我需要反过来。

SQL Server 2008

8 个答案:

答案 0 :(得分:34)

CONVERT样式103是dd / mm / yyyy。然后使用REPLACE函数消除斜杠。

SELECT REPLACE(CONVERT(CHAR(10), [MyDateTime], 103), '/', '')

答案 1 :(得分:10)

仅供记录,自SQL 2012起,您可以使用FORMAT,简单如下:

SELECT FORMAT(GETDATE(), 'ddMMyyyy')

(op问题是关于SQL 2008的具体问题)

答案 2 :(得分:7)

SELECT REPLACE(CONVERT(VARCHAR(10), THEDATE, 103), '/', '') AS [DDMMYYYY]

如下所示:http://www.sql-server-helper.com/tips/date-formats.aspx

答案 3 :(得分:2)

我找到了一种不用替换斜线的方法

select CONVERT(VARCHAR(10), GETDATE(), 112)

这将返回:“YYYYMMDD”

答案 4 :(得分:2)

多年来我一直这样做;

print convert(char,getdate(),103)

答案 5 :(得分:1)

select replace(convert(VARCHAR,getdate(),103),'/','')

select right(convert(VARCHAR,getdate(),112),2) + 
       substring(convert(VARCHAR,getdate(),112),5,2) + 
       left(convert(VARCHAR,getdate(),112),4)

答案 6 :(得分:0)

尝试一下:

SELECT CONVERT(DATE, STUFF(STUFF('01012020', 5, 0, '-'), 3, 0, '-'), 103);

它与SQL Server 2016一起使用。

答案 7 :(得分:0)

尝试以下查询以在SQL Server中格式化日期时间

FORMAT(frr.valid_from,'dd / MM / yyyy hh:mm:ss')