के साथ एसक्यूएल COUNT मेरे पास एसक्यूएल के साथ एक साधारण सरल सवाल है कि मुझे पता लगाने में परेशानी हो रही है। मान लें कि मेरे पास निम्नलिखित सारणी हैं:WHERE क्लॉज
company:
company_id
company_title
users:
user_id
username
company_owners:
company_id
user_id
अब, कंपनी के मालिकों के रूप में कई उपयोगकर्ता हो सकते हैं।
company:
1, "A Company"
2, "B Company"
3, "C Company"
users:
1, "A User"
2, "B User"
3, "C User"
company_owners:
1,1
1,2
1,3
2,3
मैं एक प्रश्न (MySQL) कि COMPANY_TITLE है, साथ ही यह है कि कंपनी के लिए मालिकों की संख्या हो जाता है, एक विशिष्ट कंपनी के मालिक के आधार पर बनाने के लिए कोशिश कर रहा हूँ: यहां कुछ उदाहरण डेटा है। तो, उदाहरण के लिए:
उदाहरण क्वेरी (अंग्रेजी में) चलाएँ: प्रत्येक कंपनी के लिए मालिकों की संख्या जाओ कि 'सी उपयोगकर्ता "के लिए एक मालिक है:
company_id=1, company_title="A Company", num_owners=3
company_id=2, company_title="B Company", num_owners=1
company_id=3, company_title="C Company", num_owners=0
मैं कोशिश की है:
SELECT COUNT(user_id), company.* FROM `company`
LEFT JOIN `company_owners` ON company_owners.company_id = company.company_id
WHERE company_owners.user_id=1 GROUP BY company_id
लेकिन यह हमेशा मुझे "1" का स्वामित्व संख्या देता है, मुझे लगता है क्योंकि यह केवल पंक्तियों को COUNT करता है जहां user_id = 1।
क्या किसी के पास कोई विचार है? यदि आवश्यकता हो तो मैं अधिक जानकारी प्रदान कर सकता हूं।
बहुत बहुत धन्यवाद!
क्या 'course_id' है? –
क्षमा करें, यह एक गलत टाइप – Chris