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

कई से कई और कई से कई चौराहे

अगर मुझे समस्या का समाधान करना होता, तो मैं चार तालिकाओं को उनके लिंकिंग कॉलम (विशेष रूप से विदेशी कुंजी) के साथ जोड़ दूंगा ) फिर HAVING . पर एक सबक्वेरी प्रत्येक व्यक्ति के लिए सूची में मदों की संख्या गिनने के लिए खंड। इसे आज़माएं,

SET @personID := 1;

SELECT  c.name
FROM    Inventory a
        INNER JOIN Foods b
            ON a.food_id = b.id
        INNER JOIN Stores c
            ON a.store_id = c.id
        INNER JOIN Lists d
            ON d.food_id = b.id
WHERE   d.person_id = @personID
GROUP BY c.name
HAVING   COUNT(DISTINCT d.food_id) =
     (
        SELECT COUNT(*)
        FROM Lists
        WHERE person_ID = @personID
     )

SQLFiddle डेमो



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. GPS निर्देशांक के लिए मुझे अपने डेटाबेस में कितने महत्वपूर्ण अंक संग्रहीत करने चाहिए?

  2. कमांड लाइन के माध्यम से लिनक्स पर MySQL डेटाबेस दिखाएं (सूची)

  3. उन सभी अभिलेखों की गणना करें जो अन्य तालिका में मौजूद नहीं हैं - SQL क्वेरी

  4. SQL में विचारों को समझना

  5. MySQL से तालिका में छवि प्राप्त करना PyQt5 में विजेट