- カテゴリ:
半構造化データ関数と構造化データ関数 (配列/オブジェクト)
OBJECT_CONSTRUCT_KEEP_NULL¶
NULL の値を持つキーと値のペアを保持する、引数から構築された OBJECT を返します。
- こちらもご参照ください。
構文¶
引数¶
keyキーと値のペアのキー。各キーは VARCHAR 値です。
valueキーに関連付けられた値。値はどのデータ型でも使用できます。
*アスタリスク(ワイルドカード)を付けて呼び出す場合、 OBJECT 値は属性名をキー、関連する値を値として、指定されたデータから構築されます。以下の例をご参照ください。
関数にワイルドカードを渡す場合、ワイルドカードをテーブルの名前またはエイリアスで修飾することができます。例えば、
mytableというテーブルからすべての列を渡すには、以下のように指定します。ILIKE と EXCLUDE キーワードを使ってフィルタリングすることもできます。
ILIKE は、指定されたパターンに一致する列名でフィルターします。許されるパターンは1つのみです。例:
EXCLUDE は、指定された列に一致しない列名をフィルターします。例:
修飾子は、これらのキーワードを使用する場合に有効です。以下の例では、 ILIKE キーワードを使用して、テーブル
mytable内のパターンcol1%に一致するすべての列をフィルターします。ILIKE と EXCLUDE キーワードは、1つの関数呼び出し内で組み合わせることはできません。
この関数では、 ILIKE と EXCLUDE キーワードは SELECT リストまたは GROUP BY 句でのみ有効です。
ILIKE と EXCLUDE キーワードの詳細については、 SELECT の「パラメータ」セクションをご参照ください。
戻り値¶
戻り値のデータ型は OBJECT です。
使用上の注意¶
キーが NULL (つまり SQL NULL)の場合、キーと値のペアは結果のオブジェクトから省略されます。ただし、値が NULL の場合、キーと値のペアは保持されます。
構築されたオブジェクトは、キーと値のペアにおける元の順序を保持するとは限りません。
例¶
この例は、 OBJECT_CONSTRUCT と OBJECT_CONSTRUCT_KEEP_NULL の違いを示しています。
次の例も OBJECT_CONSTRUCT と OBJECT_CONSTRUCT_KEEP NULL の違いを示していますが、この例では小さなテーブル(クエリの前に表示)を使用しています。
密接に関連する関数 OBJECT_CONSTRUCT を使用する例については、 OBJECT_CONSTRUCT をご参照ください。