मैं निम्नलिखित प्रश्न का सुझाव देता हूं:
SELECT COUNT(a.id) AS total_records, a.disregard_inventory, a.qty
FROM artikelstammdaten a
...
GROUP BY a.style
HAVING (SUM(a.qty) != 0 OR (a.disregard_inventory = 1))
AND (SUM(qty>0) = total_records)
आखिरी शर्त जो मैंने क्वेरी में जोड़ी थी, वह केवल एक शैली को वापस करने में सक्षम बनाती है यदि इस उत्पाद के लिए आकारों की संख्या (total_records
) इस उत्पाद के लिए उपलब्ध आकारों की संख्या के बराबर है (SUM(qty>0)
).qty>0
या तो 0 लौटाएगा (जब उत्पाद दिए गए आकार में उपलब्ध नहीं है, या 1 (जब यह उपलब्ध हो)। तो SUM(qty>0)
0 और आकारों की कुल संख्या के बीच एक पूर्णांक संख्या लौटाएगा।