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

कैसे पता करें कि कोई सूची/सेट बिल्कुल दूसरी सूची में है या नहीं?

आप अब भी having . का उपयोग कर सकते हैं , लेकिन प्रत्येक उत्पाद के लिए परीक्षण करें -- और किसी अन्य उत्पाद की अनुपस्थिति के लिए:

SELECT o.order_id
FROM orders o
GROUP BY o.order_id
HAVING SUM( product_id = 222 ) > 0 AND
       SUM( product_id = 555 ) > 0 AND
       SUM( product_id NOT IN (222, 555) ) = 0 ;

ध्यान दें कि यह MySQL शॉर्टहैंड का उपयोग करता है, जहां बूलियन अभिव्यक्तियों को 1 . के साथ संख्याओं के रूप में माना जाता है सच के लिए और 0 झूठे के लिए। मानक सिंटैक्स है:

HAVING SUM( CASE WHEN product_id = 222 THEN 1 ELSE 0 END) > 0 AND
       SUM( CASE WHEN product_id = 555 THEN 1 ELSE 0 END ) > 0 AND
       SUM( CASE WHEN product_id NOT IN (222, 555) THEN 1 ELSE 0 END ) = 0 ;



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SET फ़ील्ड के लिए उपलब्ध मान कैसे प्राप्त करें?

  2. एक ही आईडी के साथ 2 टेबल का आंतरिक जुड़ाव

  3. MySQL, PHP:तालिका से * चुनें जहां आईडी सरणी में नहीं है

  4. एसक्यूएल अद्वितीय वर्चर केस संवेदनशीलता प्रश्न

  5. MYSQL डेटाबेस क्वेरी उच्चतम स्कोर लौटाने के लिए