この機能によって新しい構文が導入され、テーブル列からJSONデータを構成したり、JSONデータをテーブル列にシュレッディングしたりすることが容易になりました。INSERT文とSELECT文は、JSONの構成とシュレッディングを処理するように拡張されています。これは、JSONデータを構成およびシュレッディングするための代替方法を提供します。この方法はJSON_COMPOSE関数またはJSON_TABLEテーブル演算子を使用するよりも簡単です。
この機能はまた、シュレッディング プロセス中に発生したテーブル内の既存の列と一致しない余分なデータを格納するために使用されるJSON AUTO COLUMNも提供します。
利点
- 新しいSELECT AS JSON構文は、返されるデータの各行がJSONデータになるように、選択列を自動的にJSONデータに構成します。
- 拡張されたINSERT文は、JSONデータをテーブルにシュレッディングするためのより簡単で単純な構文を提供します。さらに、拡張INSERT文を使用して文字列リテラルであるJSONデータをシュレッディングすると、シュレッディング操作は単一AMP操作になり、パフォーマンスが向上します。
- AUTO COLUMNは、既存のテーブル列と一致しない入力JSONデータを格納できるため、シュレッディングのプロセス中に情報が失われることはありません。
- この機能により、TeradataはNoSQLデータをより柔軟に扱うことができます。
考慮事項
- INSERT...JSON文はテキスト形式のJSONデータをシュレッディングするためにのみ使用できます。シュレッディングされたデータはVARCHAR形式で、暗黙的キャストを使用してVARCHARデータをターゲット テーブルの列形式に変換します。VARCHARデータをターゲットの列形式にキャストできない場合、挿入は失敗します。
- パラメータ化されたSQLの場合、INSERT...JSONはVARCHAR、CLOB、および外部JSONデータ(CLOBとして扱われる)をサポートします。
SQLの変更
これらの文はAUTO COLUMN宣言をサポートするように拡張されています。
- CREATE TABLE
- ALTER TABLE
SELECT文はSELECT AS JSON構文をサポートするように拡張されています。
INSERT文はINSERT...JSON構文をサポートするように拡張されています。
追加情報
- Teradata Vantage™ JSONデータ型、B035-1150
- Teradata Vantage™ SQLデータ操作言語、B035-1146
- Teradata Vantage™ SQLデータ定義言語-構文規則および例、B035-1144