sql >> データベース >  >> RDS >> PostgreSQL

postgres json列のネストされた配列をクエリする方法は?

    jsonb_array_elements()を使用します 比較する要素のjson配列の深さと同じ回数の横方向の結合:

    select 
        schools->>'school_id' school_id,
        addresses->>'addr_id' addr_id,
        addresses->>'house_description' house_description,
        addresses->>'house_no' house_no
    from title_register_data,
    jsonb_array_elements(address_data->'schools') schools,
    jsonb_array_elements(schools->'addresses') addresses
    where addresses->>'house_description' = addresses->>'house_no';
    
     school_id | addr_id | house_description | house_no 
    -----------+---------+-------------------+----------
     1         | 4       | 1                 | 1
    (1 row)  
    



    1. LIMIT句でbindValueメソッドを適用するにはどうすればよいですか?

    2. SQLiteのGROUP_CONCAT

    3. mysqlbinlogを使用してMySQLバイナリログファイル(BinLog)を読み取る方法

    4. 名前が不明なPostgreSQLドロップ制約