PostgreSQL
 sql >> डेटाबेस >  >> RDS >> PostgreSQL

पोस्टग्रेज जोंस कॉलम में नेस्टेड सरणियों को कैसे क्वेरी करें?

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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. पता लगाएँ कि क्या पंक्ति को अद्यतन या सम्मिलित किया गया था

  2. पोस्टग्रेज में कोई ईमेल मान्य है या नहीं, यह जांचने के लिए मैं एक बाधा कैसे बना सकता हूं?

  3. pg_table_size, pg_relation_size और pg_total_relation_size में क्या अंतर है? (पोस्टग्रेएसक्यूएल)

  4. java.lang.ClassNotFoundException:org.postgresql.Driver, Android

  5. स्पष्टीकरण द्वारा कस्टम आदेश