web-dev-qa-db-ja.com

SQL Serverで日付をddmmyyyyとして返します

スペーサーなしのddmmyyyyとしての日付が必要です。

これどうやってするの?

CONVERT(VARCHAR, [MyDateTime], 112)を使用してyyyymmddを取得できます

しかし、私はこれの逆が必要です。

SQL Server 2008

19
Matt

CONVERTスタイル103はdd/mm/yyyyです。次に、REPLACE関数を使用してスラッシュを削除します。

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

記録のためだけに、SQL 2012以降では [〜#〜] format [〜#〜] を使用できます。

SELECT FORMAT(GETDATE(), 'ddMMyyyy')

(opの質問はSQL 2008に固有です)

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

ここに見られるように: http://www.sql-server-helper.com/tips/date-formats.aspx

7

私はこのように何年もやっています。

print convert(char,getdate(),103)
2
Nick

スラッシュを交換せずにそれを行う方法を見つけました

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

これは「YYYYMMDD」を返します

2
zkojic
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)
1
Nagarajan