2007.08.01

CONVERTを使いこなそう!! ~日付編~

SQL Serverのみを用いて日付のフォーマットを選んで表示させたい
という事があります。

こんな時にはCONVERT関数を利用すれば解決します。


SELECT CONVERT(VARCHAR,GETDATE(),111) AS [/区切り]
, CONVERT(VARCHAR,GETDATE(),120)  AS [-区切り]
, CONVERT(VARCHAR,GETDATE(),112) AS [YYYYMMDD形式]

それぞれ表示は以下のようになります
CONVERT(VARCHAR,GETDATE(),111) ⇒ 2007/08/01 
CONVERT(VARCHAR,GETDATE(),120) ⇒ 2007-08-01 22:55:56 
CONVERT(VARCHAR,GETDATE(),112) ⇒ 20070801 

また3桁の部分の頭の1を取ると以下のようになります
CONVERT(VARCHAR,GETDATE(),11) ⇒ 07/08/01 
CONVERT(VARCHAR,GETDATE(),20) ⇒ 07-08-01 22:55:56 
CONVERT(VARCHAR,GETDATE(),12) ⇒ 070801 

初めてSQL Serverを触る人にとって最初につまずくのがCONVERT関数の日付フォーマットだと思います。

是非ともマスターしてください。

コメントを投稿

(いままで、ここでコメントしたことがないときは、コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。承認されるまではコメントは表示されません。そのときはしばらく待ってください。)

photo
ntakayama