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

पूर्ण-पाठ अनुक्रमणिका के विरुद्ध मिश्रित क्वेरी

मुझे नहीं लगता कि अगर मैं आपके प्रश्न को सही ढंग से समझता हूं तो आपको किसी भी समस्या का अनुभव करना चाहिए। मैं अक्सर पूर्ण-पाठ और बी-पेड़ को अच्छे परिणामों के साथ जोड़ता हूं। जब पूर्ण-पाठ खोज की जाती है, तो यह प्रत्येक सीमांकित "शब्द" को एक सूचकांक के रूप में देख रहा है, जैसे कि यह केवल एक शब्द के साथ एक अनुक्रमित कॉलम होगा (कुछ sql आँकड़े दें या लें)। किसी भी तरह से, SQL को इसके निष्पादन पथ का पता लगाना चाहिए। पूर्ण पाठ खोज पूर्णांक/तारीख मानों की तुलना करने का पक्षधर नहीं है - सीमांकित डेटा के मिलान स्ट्रिंग्स के लिए अधिक।

मुझे लगता है कि आप अपने लाभ के लिए बी-पेड़ अवधारणा की दक्षता का उपयोग करना जारी रखना चाहेंगे। पूर्ण-पाठ कैटलॉग अनुक्रमणिका खोज मेरे लिए एक और अधिक दौर की खोज प्रतीत होती है, हालांकि स्ट्रिंग्स को पार्स/तुलना करने के लिए "LIKE" का उपयोग करने वाली स्थितियों में बहुत अधिक फायदेमंद है।

मैं क्या करता हूं:

 SELECT * FROM MyTable
  WHERE CONTAINS(columnName, '"Toy Dog" OR "live animal"')
    AND start_date > ###;

(देखें सिंटैक्स जानकारी के लिए यह एमएसडीएन लेख )

पी.एस. जब पूर्ण-पाठ-अनुक्रमण पूर्णांक डेटा हो, तो स्टॉपलिस्ट को बंद कर दें ताकि कैटलॉग अनुक्रमण में उन मानों को अनदेखा न किया जाए।

आशा है कि इसमें से कोई भी मदद करता है! (किसी ने उत्तर नहीं दिया तो मैंने सोचा कि मैं अपना अनुभव दूंगा)




  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. SQL सर्वर में sp_help_schedule का उपयोग करना

  4. प्रति समूह पहली पंक्ति का चयन

  5. क्या लिंक से एसक्यूएल के साथ SqlGeography का उपयोग करना संभव है?