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

MySQL में पदानुक्रमित क्वेरी। (MySQL के बराबर से कनेक्ट करें)

MySQL में कोई मूल श्रेणीबद्ध क्वेरी समर्थन नहीं है।

स्तरों की एक सीमित संख्या को पार करने के लिए, हम प्रत्येक स्तर के लिए परिणाम प्राप्त करने वाली क्वेरी लिख सकते हैं, और परिणामों को UNION ALL के साथ जोड़ सकते हैं। ऑपरेटर।

या, हम एक अधिक पुनरावर्ती दृष्टिकोण के लिए एक MySQL संग्रहीत प्रोग्राम (प्रक्रिया) लिख सकते हैं।

मूल SQL क्वेरी का उपयोग करके दृष्टिकोण के उदाहरण के रूप में:

 SELECT t0.comp_code
   FROM tb_corp t0
  WHERE t0.mgr_emp_no = 111

 UNION ALL

SELECT t1.comp_code
  FROM tb_corp t0
  JOIN tb_corp t1 ON t1.incharge_comp_code = t0.comp_code
 WHERE t0.mgr_emp_no = 111

 UNION ALL

SELECT t2.comp_code
  FROM tb_corp t0
  JOIN tb_corp t1 ON t1.incharge_comp_code = t0.comp_code
  JOIN tb_corp t2 ON t2.incharge_comp_code = t1.comp_code
 WHERE t0.mgr_emp_no = 111

 UNION ALL

SELECT t3.comp_code
  FROM tb_corp t0
  JOIN tb_corp t1 ON t1.incharge_comp_code = t0.comp_code
  JOIN tb_corp t2 ON t2.incharge_comp_code = t1.comp_code
  JOIN tb_corp t3 ON t3.incharge_comp_code = t2.comp_code
 WHERE t0.mgr_emp_no = 111

आदि। इस दृष्टिकोण को t4, t5, t6, ... नीचे कुछ (उचित) स्तरों की सीमित संख्या तक बढ़ाया जा सकता है।

अधिक पुनरावर्ती दृष्टिकोण के लिए, एक MySQL संग्रहीत प्रोग्राम (PROCEDURE) लिखा जा सकता है।




  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 -PHP सम्मिलित करें DATETIME

  2. ln:/usr/lib/libmysqlclient.18.dylib:फ़ाइल मौजूद है

  3. SQL क्वेरी CodeIgniter में शामिल हों

  4. लीडरबोर्ड बनाना, मैं रैंक/स्थिति प्रदर्शित करने के बारे में कैसे जाउंगा?

  5. MySQL रहस्य:शून्य मान गैर-शून्य स्ट्रिंग से अलग नहीं है