JSON_PUBLISHは標準のテーブル演算子の構文を使用します。詳細については、<Teradata Vantage™ - SQLデータ操作言語>でSELECT文の一部として記述されるテーブル演算子構文を参照してください。
オプション カスタム句
2つのオプションのカスタム句を利用して、目的の形式でJSONデータ型インスタンスを構成するために必要な柔軟性を得ることができます。
- DO_AGGREGATE
- これにより、出力インスタンスが入力データの1つの行で構成されます。この句は次のように'Y'または'N'(文字の大小は問わず)を受け入れます。
- 'Y'で結果を集計することを指定します。 これは、デフォルトです。
- 'N'で結果が集計されないことを指定します。
この句を除外すると、JSON_PUBLISHは特定のグループ(ON句のSELECT文にあるオプションのGROUP BY句で定義される)に対応するすべてのデータを、1つのJSONデータ型インスタンスに集約します。なお、このカスタム句とGROUP BY句がないと、すべての入力行が1つのインスタンスとしてグループ化されるので注意してください。データをJSONデータ型インスタンスに集約した結果、指定された最大サイズに基づいてサイズのオーバーフローが生じると、該当するエラー文字列をともなうエラーが報告されます。
- WRITE_ARRAY
- これにより、出力インスタンスが最上位レベルでJSON配列でなくなります。このため、デフォルトでは、発行されたデータを表わす1つ以上のJSON文書から構成されるJSON配列を返します。この句によって受け入れられる唯一の値は、文字'N'(文字の大小を問わず)です。
発行されたデータをJSON配列にグループ化せず、グループ化しないとJSON構文に違反する場合は、該当するエラー文字列をともなうエラーが報告されます。