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

बायां जोड़ गुणा मान

मेरे घुटने का झटका एक सबक्वेरी है:

select count(capture_id) as count_captures, 
    (select count(id) as count_items
         from items i where i.creator_user_id = captures.user_id) as count_items 
from captures 
where user_id = 9

मुझे सच में यकीन नहीं है कि इससे बचने के लिए आप क्या कर सकते हैं। आप अपेक्षित (और आम तौर पर वांछित व्यवहार) देख रहे हैं।

बेशक, अगर आप जानते हैं कि दोनों में आईडी खुद को नहीं दोहराएगी, तो आप अलग का उपयोग कर सकते हैं:

SELECT COUNT( DISTINCT capture_id) as count_captures, 
      COUNT( DISTINCT items.id) as count_items 
FROM captures 
LEFT JOIN items ON captures.user_id = items.creator_user_id 
    WHERE user_id = 9


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. मैं node.js का उपयोग करके mySQL में बल्क इंसर्ट कैसे करूं?

  2. कोल्डफ्यूजन:भूमिका के आधार पर आवेदन विकल्प?

  3. MIN और MAX के लिए MySQL अनुक्रमणिका

  4. MySQL क्वेरी से nth रिकॉर्ड लौटाएं

  5. PHP और MySQL में टाइमज़ोन से निपटना