मैं परीक्षण की संख्या के साथ एक प्रश्न है कुछ इस तरह-प्रांगण:Postgresql iLike बनाम TSEARCH
SELECT * FROM some-table
WHERE field1 ILIKE "%thing%"
OR field2 ILIKE "%thing"
OR field3 ILIKE "%thing";
कॉलम काफी सभी varchar (50) या आस कर रहे हैं। अब मैं प्रदर्शन में सुधार करने के लिए समझता हूं, मुझे उन फ़ील्ड को इंडेक्स करना चाहिए जिन पर खोज चलती है। क्या मुझे पूरी तरह से TSEARCH के साथ ILIKE को बदलने पर विचार करना चाहिए?
pg_trgm बहुत उपयोगी है। Django उपयोगकर्ताओं के लिए: 'ऊपरी (your_text_field) पर सूचकांक' क्योंकि Django 'ilike' के बजाय ऊपरी (y)' क्वेरी की तरह ऊपरी (x) को जारी करता है। यदि फ़ील्ड को 'ऊपरी' के बिना अनुक्रमित किया गया है तो इंडेक्स उन प्रश्नों में उपयोग नहीं किया जाएगा। – Risadinha