2016-10-25 13 views
0

format(mydate, "dd/mm/yyyy")またはmydate.ToString("yyyyMMdd");のように、ほとんどのプログラミング言語で何かできるのですが、SQL Serverでは101または112などの任意の数値コードを覚えておく必要があります。SQL Serverの日付書式が正しく処理されていない

CONVERT(VARCHAR(10), GETDATE(), 101) 
CONVERT(VARCHAR(8), GETDATE(), 112) 

私はそれをGoogleに持ってTSQLで日付をフォーマットする必要があるたびに、あなたが毎日同じものを使用しない限り、覚えておくだけでは不可能です。

これを行う理由はありますか、別の方法ですか? SQL Serverの2012年以降 おかげ

+2

表示するデータのフォーマットは、原則としてアプリケーションコードに任せて、データベースでは処理しないでください。 – HABO

答えて

1

あなたはFORMAT機能を使用することができます

select format(getdate(),'yyyyMMdd')

ウィルは20161025

それともあなたが夢中にしたい場合はを返します。

select format(getdate(),'yyyy/MM-dd')

ウィルreturn 2016/10-25

+0

ありがとうございますが、私は2008年を使用しています。 – Blingers

+1

@Blingers確かに、カーブの8年遅れです。 – iamdave

+0

必要に応じて、FORMAT()はCONVERT()をスタイルパラメータに置き換えるものではありません。 FORMAT()は非決定的であるため、CONVERT()は決定的です。したがって、永続化された計算列では使用できません。 –

関連する問題