वाक्यांश खोज क्षमता पाठ्य खोज डेटा में एकीकृत है टाइप करें tsquery
. टेक्स्ट सर्च ऑपरेटर @@
आप प्रदर्शित करते हैं एक tsvector
. लेता है बाईं ओर और एक tsquery
दांई ओर। और एक tsvector
किसी भी वर्ण प्रकार के साथ-साथ JSON दस्तावेज़ से भी बनाया जा सकता है।
संबंधित:
आप अपना json
कन्वर्ट कर सकते हैं या jsonb
समर्पित में से एक के साथ टेक्स्ट सर्च वेक्टर के लिए दस्तावेज़ कार्य
:
to_tsvector()
json(b)_to_tsvector()
ध्यान दें कि इनमें केवल मान शामिल हैं JSON दस्तावेज़ से, कुंजी . से नहीं . आमतौर पर, आप यही चाहते हैं।मूल उदाहरण:
SELECT to_tsvector(jsonb '{"foo":"jump quickly"}')
@@ to_tsquery('jump <-> quick:*');
प्रदर्शन उपसर्ग मिलान वाक्यांश खोज के शीर्ष पर रहते हुए। देखें:
वैकल्पिक रूप से , आप बस tsvector
. बना सकते हैं text
. से मुख्य नामों को शामिल करने के लिए आपके JSON दस्तावेज़ का प्रतिनिधित्व:
SELECT to_tsvector((jsonb '{"foo-fighter":"jump quickly"}')::text)
@@ to_tsquery('foo <-> fight:*');
एक बड़ा tsvector
पैदा करता है , जाहिर है।
दोनों को अनुक्रमित किया जा सकता है (जो पाठ खोज का मुख्य बिंदु है)। केवल अनुक्रमणिका संबंधपरक तालिकाओं के लिए बाध्य हैं। (और आप एक्सप्रेशन को इंडेक्स
कर सकते हैं !)
अभिव्यक्ति को किसी भी मान पर लागू किया जा सकता है, तालिकाओं के लिए बाध्य नहीं, जैसा कि आप इंगित करते हैं।