logo

SQLキャスト関数

SQL CAST 関数は主に、式をあるデータ型から別のデータ型に変換するために使用されます。 SQL Server CAST 関数が宣言を目的のデータ型に変換できない場合、この関数はエラーを返します。 CAST 関数を使用して、数値データを文字または文字列データに変換します。

構文:

 CAST (expression AS [data type]) 

ここで、[データ型]はRDBMSで有効なデータ型の種類です。

構文は次のとおりです。

 CAST (EXPRESSION AS Data_ Type[(Length)] _ _ CAST in the SQL example SELECT CAST (123 AS VARCHAR (20)) [result_name] FROM [Source] 
    表現: これは、データ型を SQL に変換する場合に有効な式です。データ・タイプ: 式を変換するデータ型です。長さ: 整数型のオプションのパラメータです。この設定を使用して、対象となるデータ型の長さを定義できます。

デフォルトでは 30 です。

例:

ここでは、以下の表を使用します。

テーブルマネージャー_スコア

列名 日付の種類
マネージャーID 整数
ファーストネーム 文字(20)
スコア 浮く

テーブルには次の行が含まれています。

テーブルマネージャー_スコア

マネージャーID ファーストネーム スコア
1 初期化 92.2
2 87.5
3 結婚する 70
4 サンジュ 120.2

例 1:

 SELECT First_Name, CAST (Score AS Integer) Int_Score FROM Student_Score; 

結果:

ファーストネーム Int_Score
初期化 92
87
結婚する 70
サンジュ 120

例1 では、CAST 関数を使用して SCORE 列を FLOAT 型から INTEGER 型に変換しています。そうすると、各種RDBMSには小数点以下の数値を扱うためのルールがたくさんあります。

上記の例では、小数点以下が切り捨てられます。

例 2:

 SELECT First_Name, CAST (Score AS char (3)) Char_Score FROM Student_Score; 

結果:

ファーストネーム Char__スコア
初期化 85.
92.
結婚する 90
サンジュ 110

例 2 では、CAST 関数を使用して、 スコア 列を FLOAT 型から CHAR (3) 型に変更します。これを行うときは、最初の 3 文字だけを保持します。 3 文字を超える場合は、最初の 3 文字以降はすべて破棄されます。