2016-07-25 5 views
-1

私はそれを変換するためにいくつかの方法を見つけました。しかし、私はまだyyyy-mm-ddフォーマットまたはyyyy-mm-dd hh:mm:ssを取得します。私は現在SQL Server 2014を使用しています。getdate()をyyyymmddに変換して2年前の日付に戻す

SELECT dateadd(day, convert(int, getdate()), 112) 
SELECT DATEADD(YEAR, -2, convert(DATE, GETDATE(), 112)) 

私は2年間の日付範囲を使っています。したがって、私は2年前の日付を見つけるためのコードが必要です。

+0

を、私が試してみました –

+0

@HoneyBadger「(int型、GETDATEを変換し、その日(DATEADD SELECTをDBMS内容を指定()、112) '&' SELECT DATEADD(YEAR、-2、(DATE、GETDATE()、112)) 'を変換します。どちらもyyyymmddに変換されません – Brandon

+0

@GiladGreen現在SQL Server 2014を訴えています – Brandon

答えて

5

をチェックCONVERT(char(8), GETDATE(), 112)

をお試しください:

select FORMAT(getdate(), 'yyyyMMdd') 
+0

「20160025」はなぜ手に入りますか?むしろ奇妙に思える。 – Brandon

+1

yyyymmddの代わりにyyyyMMddを試してみてください。 – vercelli

+0

今はうまくいきます。コードマンに感謝します。もしあまりにも多すぎないなら、2年前の日付を取得するコードを教えてくれませんか? – Brandon

0

また、あなたはまた、FORMATを使用することができますhttps://technet.microsoft.com/en-us/library/ms187928(v=sql.105).aspx

+0

ありがとうたくさんの男。これは私が探しているコードです。それほど多すぎない場合は、どうすれば2年間の日付を取得できますか? – Brandon

+0

'dateadd(year、-2、getdate());' – nilsman

+0

時間を取ることは可能でしょうか?また、日付形式は私が要求したものではありません。 – Brandon

関連する問題