CONVERT

型の変換を行います。
SQLServerでは CAST関数を使用することでも型の変換が可能です。

(こちらの記事もご参考ください “文字列から日付型へ変換“)

-- SQLServer
CONVERT ( data_type [(length)] , expression [, style] )

return : 型変換をした値

data_type : 変換したいデータ型

length : 返還後のデータ長 (整数値指定。省略可能。既定値30)

expression : 変換対象
変換先の型とサイズを超えないように指定することが必要です
DATETIME型は 1753年1月1日~9999年12月31日 の範囲の情報を設定できる点に注意

style : 形式 (整数値指定)

 

styleの指定方法:

style 結果
2桁の年 4桁の年
日本で一般的な形式 11 111 11: yy/mm/dd
111: yyyy/mm/dd
規定値 0
100
mon dd yyy hh:miAM
mon dd yyy hh:miPM
1 101 1: mm/dd/yy
101: mm/dd/yyyy
ANSI 2 102 2: yy.mm.dd
102: yyyy.mm.dd
3 103 3: dd/mm/yy
103: dd/mm/yyyy
4 104 4: dd.mm.yy
104: dd.mm.yyyy
5 105 5: dd-mm-yy
105: dd-mm-yyyy
6 106 6: dd mon yy
106: dd mon yyyy
7 107 7: Mon dd, yy
107: Mon dd, yyyy
時間のみ 8
108
hh:mi:ss
9
109
mon dd yyyy hh:mi:ss:mmmAM
(または PM)
10 110 10: mm-dd-yy
110: mm-dd-yyyy
ISO 12 112 12: yymmdd
112: yyyymmdd
13
113
dd mon yyyy hh:mi:ss:mmm
(24h)
時間のみ 14 114 hh:mi:ss:mmm
(24h)
ODBC 標準 20
120
yyyy-mm-dd hh:mi:ss
(24h)
ODBC 標準
(ミリ秒)
21
121
yyyy-mm-dd hh:mi:ss.mmm
(24h)
126 yyyy-mm-ddThh:mi:ss.mmm
(mmmが0のとき出力されない)
127 yyyy-mm-ddThh:mi:ss.mmmZ
(mmmが0のとき出力されない)
(Zはタイムゾーン)
イスラム暦 130 dd mon yyyy hh:mi:ss:mmmAM
(monはイスラム暦の月)
(表示できる文字コードセットかNVARCHARを使用しないと表示されない)
イスラム暦 131 dd/mm/yyyy hh:mi:ss:mmmAM
(yyyyはイスラム暦の年?)

 

*
現在の日時(2015/01/02 03:04:05)をINT型の数値に変換する場合は、以下のように記述します。

 SELECT CONVERT(INT, GETDATE())
;

結果

CONVERT(INT, GETDATE())
42005

 

*
現在の日時(2015/01/02 03:04:05)を”2015-01-02 03:04:05″形式の文字列型の数値に変換する場合は、以下のように記述します。

SELECT CONVERT(VARCHAR(30), GETDATE(), 120)
;

結果

CONVERT(VARCHAR(30), GETDATE(), 120)
2015-01-02 03:04:05

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です