SQLServerで値の型名を取得するには、SQL_VARIANT_PROPERTY関数を使用します。
構文
- (型名を取得する構文)
- SQL_VARIANT_PROPERTY(<値>, 'BaseType')
戻り値はsql_variant型です
サンプル
例)型名を取得するサンプル
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
select SQL_VARIANT_PROPERTY('ABC', 'BaseType') →varchar select SQL_VARIANT_PROPERTY(N'ABC', 'BaseType') →nvarchar select SQL_VARIANT_PROPERTY(123, 'BaseType') →int select SQL_VARIANT_PROPERTY(123.45, 'BaseType') →numeric select SQL_VARIANT_PROPERTY(getdate(), 'BaseType') →datetime select SQL_VARIANT_PROPERTY(null, 'BaseType') →NULL |
備考
- SQL_VARIANT_PROPERTYの第2引数の値により、以下の値も取得できます。
・'BaseType' ⇒ 型名
・'Precision' ⇒ 精度
・'Scale' ⇒ スケール(小数点以下の桁数)
・'TotalBytes' ⇒ データ保持に必要なバイト数
・'Collation' ⇒ 照合順序
・'MaxLength' ⇒ データ型の最大データ長