問題:
SQLServerで整数値をDECIMALデータ型に変換したい。
整数をDECIMALデータ型に変換してみましょう。
ソリューション1:
CAST()
を使用します 働き。作成するクエリは次のとおりです。
SELECT CAST(12 AS DECIMAL(7,2) ) AS decimal_value ;
結果は次のとおりです。
decimal_value |
---|
12.00 |
ディスカッション:
CAST()
を使用する 整数をDECIMALデータ型に変換する関数。この関数は、引数として式または列名を取り、その後にキーワードASと新しいデータ型が続きます。この例では、整数(12)を10進値(12.00)に変換しました。 CAST()
のDECIMALのため、表示される値には小数点以下2桁があります 小数点が2つあります。
SQLServerには別のオプションがあります:CONVERT()
。これは、CAST()
のようなSQL標準関数ではありません。 。以下のクエリはその使用法を示しています。
ソリューション2:
整数をDECIMAL型に変換する別の方法は次のとおりです。
SELECT CONVERT(DECIMAL(7,2),12 ) AS decimal_value ;
このクエリは、CAST()
と同じ結果を生成します 、ただし、変換するデータ型と式、値、または列名の2つの必須の引数を取ります。オプションの3番目のパラメーターは、値を新しいタイプでフォーマットする方法を指定します。値の書式設定について詳しくは、SQLServerの公式ドキュメントをご覧ください。
特定の形式で値を返す必要がない場合は、CAST()
を使用します 。