ऐसा करने के लिए आपको एक बाहरी जुड़ाव की आवश्यकता है। वैसे, जिस तरह से आप अपनी क्वेरी को एक अंतर्निहित जुड़ाव के साथ लिख रहे हैं वह पुराना है और अब इसकी अनुशंसा नहीं की जाती है। जॉइन कीवर्ड का उपयोग करने की अनुशंसा की जाती है। इससे आंतरिक जुड़ाव को बाहरी जुड़ाव में बदलना भी आसान हो जाता है।
FROM categories AS sc
LEFT JOIN products AS s
ON s.ownerid=sc.id
NULL के बजाय 0 वापस करने के लिए IFNULL(..., 0)
. पूरी क्वेरी बन जाती है:
SELECT
sc.*,
IFNULL(MIN(s.price), 0) AS minp,
IFNULL(MAX(s.price), 0) AS maxp
FROM categories AS sc
LEFT JOIN products AS s
ON s.ownerid = sc.id
GROUP BY sc.id
आप यह भी विचार करना चाहेंगे कि क्या उन श्रेणियों के लिए 0 के बजाय डिफ़ॉल्ट NULL को वापस करना बेहतर होगा जिनके पास कोई उत्पाद नहीं है।