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

उन्नत MySQL शामिल हो रहा है। क्वेरी को तेज करना

एक तरीका है लेकिन जितना अधिक आप फ़ील्ड जोड़ते हैं यह महंगा हो जाता है। यही बात कई CMS के साथ भी होती है जो उस रूप में अतिरिक्त उपयोगकर्ता डेटा संग्रहीत करना चुनते हैं।

आप इसका उपयोग करके एक कार्यशील खोज SQL प्राप्त कर सकते हैं:

SELECT
    users.*,
    firstname.data AS firstname,
    lastname.data AS lastname,
    eyecolor.data AS eyecolor,

FROM
    users
    LEFT JOIN completed_form_fields AS firstname ON firstname.userid = users.id AND firstname.fieldkey = "firstname"
    LEFT JOIN completed_form_fields AS lastname ON lastname.userid = users.id AND lastname.fieldkey = "lastname"
    LEFT JOIN completed_form_fields AS eyecolor ON eyecolor.userid = users.id AND eyecolor.fieldkey = "eyecolor"

WHERE
    firstname.data LIKE '%searchdata%'
    OR lastname.data LIKE '%searchdata%'
    OR eyecolor.data LIKE '%searchdata%'

जितना अधिक आप टेबल जोड़ते हैं, MySQL सर्वर के लिए यह विधि बहुत बड़ी और महंगी हो जाती है। इसलिए, मैं अनुशंसा करता हूं कि इस तरह से 10-15 से अधिक जॉइन न करें और फिर, मैं यह सुनिश्चित करने के लिए इसे प्रोफाइल करूंगा।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. टोकन गार्ड में api_token कॉलम कैसे बदलें?

  2. पीडीओ के साथ PHP में, अंतिम एसक्यूएल पैरामीट्रिज्ड क्वेरी कैसे जांचें?

  3. MySQL या PHP एक जोड़ रहा है जब भी £ का उपयोग किया जाता है

  4. MYSQL ट्रिगर:JSON_SEARCH पूर्णांकों के एक json सरणी में एक पूर्णांक मान

  5. PHP MySQL ट्रिगर - ट्रिगर करने के लिए चर कैसे पास करें?