OracleのJSON_TABLEの使用例とコードサンプル


  1. 基本的なJSON_TABLEの使用例: JSON_TABLEを使用して、JSONデータからテーブルを作成する基本的な例を示します。

    SELECT *
    FROM JSON_TABLE('{"name": "John", "age": 30, "city": "Tokyo"}',
                   '$'
                   COLUMNS (name VARCHAR2(50) PATH '$.name',
                            age NUMBER PATH '$.age',
                            city VARCHAR2(50) PATH '$.city'))

    上記の例では、JSONデータから"名前"、"年齢"、"都市"の列を持つテーブルを作成しています。

  2. ネストされたJSONオブジェクトの処理: JSON_TABLEを使用して、ネストされたJSONオブジェクトを処理する方法を示します。

    SELECT *
    FROM JSON_TABLE('{"name": "John", "age": 30, "address": {"city": "Tokyo", "country": "Japan"}}',
                   '$'
                   COLUMNS (name VARCHAR2(50) PATH '$.name',
                            age NUMBER PATH '$.age',
                            city VARCHAR2(50) PATH '$.address.city',
                            country VARCHAR2(50) PATH '$.address.country'))

    上記の例では、JSONデータから"名前"、"年齢"、"都市"、"国"の列を持つテーブルを作成しています。

  3. JSON配列の処理: JSON_TABLEを使用して、JSON配列を処理する方法を示します。

    SELECT *
    FROM JSON_TABLE('[{"name": "John", "age": 30},
                     {"name": "Jane", "age": 25},
                     {"name": "Tom", "age": 35}]',
                   '$[*]'
                   COLUMNS (name VARCHAR2(50) PATH '$.name',
                            age NUMBER PATH '$.age'))

    上記の例では、JSONデータから"名前"、"年齢"の列を持つテーブルを作成しています。

これらは、JSON_TABLEの基本的な使用例です。JSON_TABLEを使用することで、JSONデータをSQLクエリで簡単に処理できます。さまざまなパターンに対応するために、さらに高度なJSON_TABLEの機能も利用できます。詳細な情報は、Oracleの公式ドキュメントを参照してください。