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

Mysql क्वेरी आईडी खोजने के लिए जहां एक कॉलम के लिए कई शर्तें मिलती हैं

SELECT ID, TYPE FROM types NATURAL JOIN (
  SELECT ID FROM types GROUP BY ID HAVING SUM(COLOR='Red') AND SUM(COLOR='Blue')
) t WHERE COLOR IN ('Red', 'Blue')

इसे sqlfiddle पर देखें ।

वैकल्पिक रूप से, यदि आप प्रकारों को एक सीमित स्ट्रिंग में जोड़कर खुश हैं, तो आप एक ही पास में वांछित डेटा निकाल सकते हैं:

SELECT   ID, GROUP_CONCAT(TYPE)
FROM     types
WHERE    COLOR IN ('Red', 'Blue')
GROUP BY ID
HAVING   COUNT(*) = 2

इसे sqlfiddle पर देखें ।

ध्यान दें, यदि आपकी तालिका में एक ही (ID, COLOR) के साथ कई रिकॉर्ड हो सकते हैं जोड़ी, आपको COUNT(*) . को बदलना चाहिए अधिक महंगे COUNT(DISTINCT COLOR) . के साथ ।




  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 में UTF-8 एन्कोडेड डंप लोड हो रहा है

  2. MySQL में रूट उपयोगकर्ता को सभी विशेषाधिकार वापस कैसे प्राप्त करें?

  3. यदि अन्य पर WHERE क्लॉज

  4. दो कॉलम में दो चयन कथन गठबंधन?

  5. mysql, utf-8 कॉलम:केवल केस-संवेदी का चयन कैसे करें?