आपको कैलेंडर तालिका पर बाहरी जुड़ाव की आवश्यकता है। कुछ इस तरह
SELECT c.cal_date, coalesce(t1.price, 0) as total
FROM calendar c
LEFT JOIN (SELECT b.purchase_date::date, sum(price) as price
FROM order_products a
INNER JOIN order_saved b
ON a.order_id = b.id
AND b.purchase_date BETWEEN '2011-09-16 23:59' AND '2011-10-16 23:59'
AND b.status > 2
AND a.usr_id = 'XXXX'
GROUP BY b.purchase_date) t1 on t1.purchase_date = c.cal_date
WHERE cal_date BETWEEN '2011-09-16 23:59' AND '2011-10-16 23:59'
ORDER BY c.cal_date
यदि आप DDL (CREATE TABLE
.) पोस्ट करते हैं तो आपको बेहतर उत्तर मिलेंगे ) कथन, और न्यूनतम INSERT
बयान जो हमें वास्तव में हमारे उत्तरों का परीक्षण करने के लिए पर्याप्त डेटा देते हैं। (अपना प्रश्न संपादित करें और DDL और INSERT कथन चिपकाएँ।)