変換関数¶
この関数ファミリーを使用して、Snowflakeデータ型の式を別のデータ型に変換できます。
このトピックの内容:
関数のリスト¶
サブカテゴリ |
関数 |
メモ |
---|---|---|
任意のデータ型 |
||
CAST のエラー処理バージョン。 |
||
テキスト/文字/バイナリデータ型 |
||
TO_BINARY のエラー処理バージョン。 |
||
数値データ型 |
||
TO_DECIMAL、 TO_NUMBER などのエラー処理バージョン。 |
||
TO_DOUBLE のエラー処理バージョン。 |
||
ブールデータ型 |
||
TO_BOOLEAN のエラー処理バージョン。 |
||
日付と時刻のデータ型 |
||
TO_DATE のエラー処理バージョン。 |
||
TO_TIME のエラー処理バージョン。 |
||
TO_TIMESTAMP などのエラー処理バージョン。 |
||
半構造化データ型 |
||
地理空間データ型 |
||
TO_GEOGRAPHY のエラー処理バージョン |
||
TO_GEOMETRY のエラー処理バージョン |
||
エラー処理変換関数¶
プレフィックスがTRY_の変換関数は、それぞれの変換関数の特別なバージョンです。これらの関数は、変換を実行できない場合にエラーを発生させる代わりに NULL 値を返します。
これらの関数は、入力に文字列式(つまり、 VARCHAR または CHAR データ型)のみをサポートしています。
重要
これらのエラー処理変換関数は、変換エラーが比較的まれな状況向けに最適化されています。
エラーがない(または非常に少ない)場合、パフォーマンスへの目に見える影響はありません。
変換の失敗が多数ある場合にこれらの関数を使用すると、パフォーマンスが大幅に低下する可能性があります。また、 VARIANT 型でそれらを使用する場合、一部の操作によりパフォーマンスが低下する可能性があります。
変換関数の数値形式¶
関数 TO_DECIMAL , TO_NUMBER , TO_NUMERIC および TO_DOUBLE は、入力式が文字列に評価される場合、入力文字列の形式を指定するオプションのパラメーターを受け入れます。このパラメーターに設定できる値の詳細については、 SQL 形式モデル をご参照ください。
変換関数の日付と時刻の形式¶
次の関数を使用すると、予想される日付、時刻、またはタイムスタンプの形式を指定して、文字列を解析または生成できます。
次の大文字と小文字を区別しない要素を使用してフォーマットを記述し、オプションの引数でフォーマットを指定します。
形式要素 |
説明 |
---|---|
|
年を表す4桁の数字。 |
|
2桁の年号で、 TWO_DIGIT_CENTURY_START セッション・パラメーターで制御されます。例えば、 |
|
2桁の月( |
|
完全な月名または短縮された月名。 |
|
完全な月名。 |
|
月の2桁の日( |
|
曜日の略称。 |
|
時間を表す2桁の数字( |
|
時間を表す2桁の数字( |
|
午前( |
|
分を表す2桁の数字( |
|
秒を表す2桁目の数字( |
|
|
|
タイムゾーンの時間と分、 UTC との時差。記号の前に |
|
ISO 形式 の4桁の年。これは BCE 年の場合は負になります。 |
注釈
日付のみの形式を使用する場合、関連付けられた時刻はその日の午前0時と見なされます。
二重引用符で囲まれた形式または上記の要素以外の形式のものは、解釈されることなく解析/フォーマットされます。
有効な範囲、桁数、ベストプラクティスの詳細については、 日付、時刻、およびタイムスタンプ形式の使用に関する追加情報 をご参照ください。
使用上の注意¶
二重引用符で囲まれた形式または上記の要素以外の形式のものは、解釈されることなく解析/フォーマットされます。
例¶
指定された入力形式 dd/mm/yyyy
を使って、文字列を日付に変換します。出力における日付の表示形式は、 DATE_OUTPUT_FORMAT セッションパラメーター(デフォルト YYYY-MM-DD
)によって決定されます。
SELECT TO_DATE('3/4/2024', 'dd/mm/yyyy');
+-----------------------------------+
| TO_DATE('3/4/2024', 'DD/MM/YYYY') |
|-----------------------------------|
| 2024-04-03 |
+-----------------------------------+
日付を文字列に変換し、 日付出力形式 mon dd, yyyy
を指定します。
SELECT TO_VARCHAR('2024-04-05'::DATE, 'mon dd, yyyy');
+------------------------------------------------+
| TO_VARCHAR('2024-04-05'::DATE, 'MON DD, YYYY') |
|------------------------------------------------|
| Apr 05, 2024 |
+------------------------------------------------+
変換関数のバイナリ形式¶
TO_CHAR , TO_VARCHAR、および TO_BINARY は、文字列を解析または生成するために予期される形式を指定するオプションの引数を受け入れます。
形式は、次の文字列のいずれかにできます(大文字と小文字の区別なし)。
HEX
BASE64
UTF-8
これらの形式の詳細については、 サポートされているバイナリ形式の概要 をご参照ください。
これらの形式の使用例については、 バイナリ入出力 の例のセクションをご参照ください。