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

सक्रिय रिकॉर्ड का उपयोग करके एक नेस्टेड/बहु-स्तरीय पोस्टग्रेज JSON प्रकार पर खोजें

यदि आप पोस्टग्रेज़ को डेटाबेस के रूप में उपयोग कर रहे हैं और कॉलम वास्तव में एक जेसन प्रकार है, तो आप इस तरह रेल में एक खोज का उपयोग कर सकते हैं:

LogService.where("response_body#>>'{status}' = 'ok'")

यह #>> json पथ पर चलेगा और खोज करेगा। यदि आप केवल #> (केवल एक> के साथ) का उपयोग करते हैं, तो यह शेष json लौटा देगा।

एक अन्य उदाहरण, यदि आप "c" => "ok" प्राप्त करना चाहते हैं

LogService.where("response_body#>>'{um, b, c}' = 'ok'")

मुझे लगता है कि यही है।




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. postgresql INSERT क्वेरी को कर्सर के रूप में नहीं खोल सकता

  2. लेन-देन कार्य के माध्यम से समानांतर आदेशों को संभाल नहीं सकता है। जब सभी

  3. Laravel 5 + PostgreSQL:डेटाबेस [पोस्टग्रेज] कॉन्फ़िगर नहीं किया गया। गलती

  4. अगर मैं Apache::DBI's Connect_cached() का उपयोग कर रहा हूं, तो क्या मुझे डिस्कनेक्ट () करना चाहिए?

  5. मैं जंग में PostgreSQL से टाइमज़ोन (टाइमस्टैम्प्टज़) मान के साथ टाइमस्टैम्प कैसे पढ़ सकता हूं?