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

कैसे चुनें तेज करने के लिए .. एकाधिक कॉलम पर MySQL में प्रश्नों की तरह?

एक इंडेक्स क्वेरी को गति नहीं देगा, क्योंकि टेक्स्ट कॉलम के लिए इंडेक्स बाएं से शुरू होने वाले एन अक्षरों को इंडेक्स करके काम करते हैं। जब आप LIKE '%text%' करते हैं तो यह अनुक्रमणिका का उपयोग नहीं कर सकता क्योंकि पाठ से पहले वर्णों की एक चर संख्या हो सकती है।

आपको जो करना चाहिए वह इस तरह की क्वेरी का बिल्कुल भी उपयोग नहीं करना है। इसके बजाय आपको FTS (पूर्ण पाठ खोज) जैसे कुछ का उपयोग करना चाहिए जो MySQL MyISAM तालिकाओं के लिए समर्थन करता है। गैर-MyISAM तालिकाओं के लिए ऐसी अनुक्रमण प्रणाली को स्वयं बनाना भी बहुत आसान है, आपको बस एक अलग अनुक्रमणिका तालिका की आवश्यकता है जहां आप वास्तविक तालिका में शब्दों और उनकी प्रासंगिक आईडी संग्रहीत करते हैं।

अपडेट करें

MySQL 5.6+ के साथ InnoDB तालिकाओं के लिए पूर्ण पाठ खोज उपलब्ध है।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL:लोड डेटा स्थानीय जानकारी सक्षम करें

  2. Passport, Redis और MySQL का उपयोग करके Node.js में सत्रों का प्रबंधन कैसे करें

  3. Node.js पर Sequelize का उपयोग करके जॉइन क्वेश्चन कैसे करें

  4. मैसकल कवरिंग बनाम कंपोजिट बनाम कॉलम इंडेक्स

  5. MySQL LAST_INSERT_ID() एकाधिक रिकॉर्ड INSERT कथन के साथ प्रयोग किया जाता है