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

mysql में sql जॉइन का उपयोग कैसे करें?

    select tu.mr_fname, tu.mr_lname, count(ts.mr_id) as `count` 
from tbl_user tu 
inner join tbl_schedule ts on ts.mr_id = tu.mr_id and 
      ts.sch_date between '2012-01-01' and '2012-08-01' 
group by tu.mr_id

उपरोक्त आपको सभी उपयोगकर्ताओं को शेड्यूल में एक पंक्ति के साथ मिल जाएगा। तो 0 की गिनती वाले उपयोगकर्ता दिखाई नहीं देंगे।

select tu.mr_fname, tu.mr_lname, count(ts.mr_id) as `count` 
from tbl_user tu 
left join tbl_schedule ts on ts.mr_id = tu.mr_id and 
      ts.sch_date between '2012-01-01' and '2012-08-01' 
group by tu.mr_id

यह क्वेरी उपयोगकर्ता के पहले नाम और अंतिम नाम का चयन करेगी और शेड्यूल तालिका में उपयोगकर्ता आईडी के प्रकट होने की संख्या की गणना करेगी।

यह यूजर आईडी के आधार पर समूह बनाकर करता है।

और इसके अतिरिक्त यह यूजर आईडी और तारीख के आधार पर लेफ्ट जॉइन का उपयोग करता है। यहां तारीख की शर्त रखना जरूरी है ताकि सभी यूजर्स का चयन हो जाए। ऐसा इसलिए है क्योंकि लेफ्ट जॉइन में वे सभी उपयोगकर्ता शामिल होंगे जो मेल नहीं खाते। लेकिन अगर आप इसे जहां क्लॉज पर रखते हैं, तो सभी यूजर्स नहीं चुने जाएंगे। दूसरे शब्दों में, 'गेरी चंदन' के लिए आपको शून्य की गिनती नहीं मिलेगी यदि आप तारीख की शर्त को जहां क्लॉज में डालते हैं। इसके बजाय उसे परिणामों से दूर रखा जाएगा।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. सबक्वेरी में दो "WHERE NOT IN" के साथ Laravel Eloquent

  2. डेटाटाइम प्रारूप में वर्तमान तिथि डालें mySQL

  3. जावा JDBC MySQL अपवाद:परिणामसेट बंद होने के बाद ऑपरेशन की अनुमति नहीं है

  4. MySQL में टेबल कॉपी कैसे करें

  5. किसी भी निर्दिष्ट MySQL होस्ट से कनेक्ट करने में असमर्थ