読者です 読者をやめる 読者になる 読者になる

SQL Server CONVERT

SQL Server

文字列型の日付からhh:mi:ss形式に変換

※varcharの長さによって、hh:mi:ssの形式による調整も可能 例:hh:miの場合 varchar(5)

select 
           CONVERT(varchar(8), CONVERT(datetime,テーブル.カラム名), 108) AS time 
from テーブル名

Syntax for CAST:
CAST ( expression AS data_type [ ( length ) ] )
Syntax for CONVERT:
CONVERT ( data_type [ ( length ) ] , expression [ , style ] )
expression
任意の有効なです。
data_type
対象のデータ型です。 これには xml、bigint、sql_variant などがあります。 別名データ型は使用できません。
length
対象のデータ型の長さを指定する整数です (省略可能)。 既定値は 30 です。
style
CONVERT 関数で expression を変換する方法を指定する整数式です。 スタイルが NULL の場合は、NULL が返されます。 範囲は、data_type で決まります。 詳細については、「解説」を参照してください。
data_type に変換された expression を返します。

日付および時刻のスタイル

expression が日付や時刻のデータ型である場合、style には次の表に示すいずれかの値を指定できます。 その他の値は 0 として処理されます。 SQL Server では、アラビア式での日付形式がクウェート アルゴリズムによりサポートされます。
2 桁の年 (yy) (1) 4 桁の年 (yyyy) 標準 入力/出力 (3)
- 0 または 100 (1、2) 既定値 mon dd yyyy hh:miAM (または PM)
1 101 米国 1 = mm/dd/yy101 = mm/dd/yyyy
2 102 ANSI 2 = yy.mm.dd102 = yyyy.mm.dd
3 103 イギリス/フランス 3 = dd/mm/yy103 = dd/mm/yyyy
4 104 ドイツ 4 = dd.mm.yy104 = dd.mm.yyyy
5 105 イタリア 5 = dd-mm-yy105 = dd-mm-yyyy
6 106 (1) - 6 = dd mon yy106 = dd mon yyyy
7 107 (1) - 7 = Mon dd, yy107 = Mon dd, yyyy
8 108 - hh:mi:ss
- 9 または 109 (1、2) 既定値 + ミリ秒 mon dd yyyy hh:mi:ss:mmmAM (または PM)
10 110 USA 10 = mm-dd-yy110 = mm-dd-yyyy
11 111 日本 11 = yy/mm/dd111 = yyyy/mm/dd
12 112 ISO 12 = yymmdd112 = yyyymmdd
- 13 または 113 (1、2) ヨーロッパの既定値 + ミリ秒 dd mon yyyy hh:mi:ss:mmm(24h)
14 114 - hh:mi:ss:mmm(24h)
- 20 または 120 (2) ODBC 標準 yyyy-mm-dd hh:mi:ss(24h)
- 21 または 121 (2) ODBC 標準 (ミリ秒を含む) yyyy-mm-dd hh:mi:ss.mmm(24h)
- 126 (4) ISO 8601 yyyy-mm-ddThh:mi:ss.mmm (スペースなし)
注意 
ミリ秒 (mmm) の値が 0 の場合、ミリ秒の値は表示されません。 たとえば、値 '2012-11-07T18:26:20.000' は、'2012-11-07T18:26:20' と表示されます。
- 127(6, 7) ISO 8601 (タイム ゾーン Z) yyyy-mm-ddThh:mi:ss.mmmZ (スペースなし)
注意 
ミリ秒 (mmm) の値が 0 の場合、ミリ秒の値は表示されません。 たとえば、値 '2012-11-07T18:26:20.000' は、'2012-11-07T18:26:20' と表示されます。
- 130 (1,2) Hijri (5) dd mon yyyy hh:mi:ss:mmmAM
- 131 (2) Hijri (5) dd/mm/yy hh:mi:ss:mmmAM