input query

Teradata® Database JSONデータ型

brand
Software
prodname
Teradata Database
vrm_release
16.20
category
プログラミング リファレンス
featnum
B035-1150-162K-JPN
input query
文字列入力パラメータ。ユーザーによるシュレッディングの実行元となるJSONインスタンスのグループの結果をもたらすクエリーを指定します。追加の列が生じる場合がありshred statementで参照されます。
このパラメータがNULLの場合には、エラーが報告されます。

input queryパラメータは、ソース テーブル内の1つ以上のJSONオブジェクトを操作できます。JSON_SHRED_BATCHを呼び出すユーザーにはソース テーブルに対するSELECT権限が必要です。入力クエリーは、JSON_TABLE関数呼び出しにマップされます。JSON_TABLEでは指定された最初の2つの列がそれぞれID値とJSONオブジェクトになる必要があるので、input queryパラメータでも最初の2つの列がID値とJSONオブジェクトになる必要があります。

以下にinput query文字列の例を示します。

'SELECT id, empPersonalInfo, site FROM test.json_table'
'SELECT JSONDOCID, JSONDT1, a, b FROM jsonshred.JSON_TABLE3 WHERE JSONID=100'

JSONID(大文字または小文字)はキーワードです。JSON文書のID値に使用される一時列名です。JSONIDはinput query句とtable expression句で使用可能です。JSONIDは"colexpr"または"queryexpr"ではtemp_column_nameとして使用できません。

複数のJSONオブジェクトでのJSON_TABLEの実行には、1回の呼び出しの結果とソース テーブル間の結合が必要です。 テーブルの完全な結合を避けるには、結合条件がID列から作成できるように、そのID列をinput queryパラメータに指定する必要があります。

queryexpr内のデータ型(詳しくは後述)は、input queryで指定された列の実際のデータ型と一致する必要があります。明示的なキャストは追加されないので、絶対的なデータ型でない場合は、query exprで定義されたデータ型に対してデータは暗黙的にキャスト可能である必要があります。エラーが発生するとシュレッド失敗となり、ユーザーに報告されます。

JSON_TABLEの実行中に問題が発生した場合は、エラー メッセージでID列を使用して、問題が生じた行を特定します。