CONVERT 関数 - AWS Clean Rooms

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

CONVERT 関数

と同様CAST 関数、CONVERT 関数はあるデータ型を互換性のある別のデータ型に変換します。例えば、文字列を日付に変換したり、数値型を文字列に変換したりできます。CONVERT は、ランタイム変換を実行します。つまり、変換によってソーステーブルの値のデータ型は変更されません。クエリのコンテキストでのみ変更されます。

特定のデータ型は、CONVERT 関数を使用して、他のデータ型に明示的に変換する必要があります。その他のデータ型は、CAST や CONVERT を使用せずに、別のコマンドの一部として暗黙的に変換できます。型の互換性と変換 を参照してください。

構文

CONVERT ( type, expression )

引数

type

サポートされているデータ型の 1 つ。ただしデータ型、VARBYTE、BINARY、BINARY 可変データ型は除きます。

expression

1 つ以上の値 (列名、値など) に評価される式。null 値を変換すると、null が返されます。式には空白または空の文字列を含めることはできません。

戻り型

CONVERT は、type 引数で指定されたデータ型を返します。

注記

AWS Clean Rooms 次のように、精度が低下する DECIMAL 変換など、問題のある変換を実行しようとするとエラーが返されます。

SELECT CONVERT(decimal(2,1), 123.456);

また、次の INTEGER 変換では、オーバーフローが生じます。

SELECT CONVERT(smallint, 12345678);

次のクエリは、CONVERT 関数を使用して小数の列を整数に変換します。

SELECT CONVERT(integer, pricepaid) FROM sales WHERE salesid=100;

この例では、整数を文字列に変換します。

SELECT CONVERT(char(4), 2008);

次の例では、現在の日付と時刻を可変文字データ型に変換します。

SELECT CONVERT(VARCHAR(30), GETDATE()); getdate --------- 2023-02-02 04:31:16

この例では、販売時間の列を時刻のみに変換し、各行から日付を削除します。

SELECT CONVERT(time, saletime), salesid FROM sales order by salesid limit 10;

次の例では、可変文字データを datetime オブジェクトに変換します。

SELECT CONVERT(datetime, '2008-02-18 02:36:48') as mysaletime;