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

समूहीकृत डेटा पंक्तियों के साथ जुड़ने का उपयोग करना

समस्या यह है कि जब आप GROUP BY . का उपयोग करते हैं , आप केवल SELECT कर सकते हैं समुच्चय और आपके द्वारा समूहीकृत किए गए स्तंभ।

invoices.id एक कॉलम है जिसे आपने चुनने का प्रयास किया, लेकिन समूह नहीं किया। मुझे लगता है कि आप शायद इस कॉलम को GROUP BY . में जोड़ना चाहते हैं खंड।

SELECT 
   invoices.id, 
   sum(grossTotal)-IFNULL(depositsCheck.previouslyPaid,0) as todayTotal, 
   depositsCheck.previouslyPaid, sum(grossTotal) as grossTotal  
FROM `invoices`    
    LEFT JOIN (SELECT SUM(amount) as previouslyPaid, invNo 
    FROM deposits 
    GROUP BY invNo) depositsCheck ON depositsCheck.invNo=invoices.id 
GROUP BY  invoices.paymentType, invoices.id ORDER BY id DESC

आपके द्वारा दिए गए उदाहरण तालिकाओं के लिए, यह संभवतः देगा:

id    |    paymentType     |     grossTotal   |    dateTime   |   previouslyPaid
1     |         Cash       |        1000      |   UNIX TIME   |       150
2     |         Card       |        1350      |   UNIX TIME   |       350
3     |         Card       |        1250      |   UNIX TIME   |         0
4     |         Card       |        750       |   UNIX TIME   |         0

लेकिन सामान्य तौर पर, आपके पास कुछ ऐसा होगा:

id    |    paymentType     |     grossTotal   |    dateTime   |   previouslyPaid
1     |         Cash       |        1000      |   UNIX TIME   |       150
1     |         Card       |        1000      |   UNIX TIME   |       300
2     |         Cash       |        1350      |   UNIX TIME   |       350
2     |         Card       |        1350      |   UNIX TIME   |       350

जहां आप ऊपर देख सकते हैं, चालान 1 के लिए, 150 का भुगतान नकद में किया गया था, और 300 का भुगतान कार्ड द्वारा किया गया था।




  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:एक प्रश्न में सप्ताह की संख्या से सप्ताह की तारीख सीमा

  2. खाली टेबल पर दो समवर्ती डिलीट + इंसर्ट स्टेटमेंट डेडलॉक क्यों करते हैं?

  3. संक्षिप्त संख्या के लिए प्रारूप संख्या

  4. क्या पेजिनेशन के लिए LIMIT OFFSET, LENGTH को ORDER BY की आवश्यकता है?

  5. त्रुटि 1366 (HY000):गलत स्ट्रिंग मान:पंक्ति 1 पर कॉलम 'टिप्पणी' के लिए '\xF0\x9F\x98\x9C'