SQL道場 変換関数 CAST関数

SQLでデータ型を変換するCAST関数について記載しています。

対応データベース:SQLServer MySQL Oracle PostgreSQL DB2 ANSI

CAST関数の文法

SELECT CAST(変換する値 AS 変換する型) FROM テーブル
SELECT CAST (value to convert AS type to convert) FROM table
引数変換する値変換する値
変換する型
返値変換後の値

CAST関数は指定された値を指定された型に変換します。変換できない型を指定した場合はエラーになります。変換後の型に変換前と同じ型を指定することも可能です。この場合、あわせて有効長を変更することもできます。

OracleはTO_CHAR、TO_DATE、TO_NUMBERをCAST関数と同じように利用できます。SQL ServerはCONVERT関数をCAST関数と同じように利用できます。DB2はINTEGER型に変換する場合は、INTEGER関数が、VARCHAR型に変換するためにはVARCHAR関数を利用できます。

実行例(Execution example)

MySQLの実行例(MySQL Example)

/* MySQL 数値から文字列に変換するサンプル */
SELECT CAST(123.456 AS VARCHAR)
MySQL 数値から文字列に変換するサンプル実行結果
/* MySQL 文字列から日付型に変換するサンプル */
SELECT CAST('2023-01-01' AS DATE)
MySQL 文字列から日付型に変換するサンプル実行結果

SQLServerの実行例(Example of executing SQLServer)

/*SQL Server 数値から文字列に変換するサンプル */
SELECT CAST(123.456 AS VARCHAR)
SQL Server 数値から文字列に変換するサンプル実行結果
/*SQL Server 文字列から日付型に変換するサンプル */
SELECT CAST('2023-01-01' AS DATE)
SQL Server 文字列から日付型に変換するサンプル実行結果