उनसे जुड़ें:
SELECT r.product_id, i.brand, i.name, i.category, DATE_FORMAT( r.inputTime, '%e-%b' ) AS inputTime, r.shopType, r.price AS minimum_price, r.record_id
FROM ( SELECT *
FROM itemRecord
WHERE product_id = '1'
ORDER BY price ASC, inputTime DESC) AS r
INNER JOIN itemInfo As i
ON r.product_id = i.product_id
WHERE i.id = r.product_id
GROUP BY DATE(r.inputTime)
LIMIT 0, 7
स्पष्टीकरण:
मैं एक आंतरिक क्वेरी करता हूं जो तालिका क्रम को price ASC
. द्वारा प्रस्तुत करता है डिफ़ॉल्ट के बजाय, मान लें id ASC
. जब आप GROUP BY
पंक्तियों में, यह डिफ़ॉल्ट रूप से पहली पंक्ति के स्तंभों का उपयोग करता है, जो इस मामले में सबसे कम कीमत वाला है।
आपका समाधान काम नहीं किया क्योंकि हो सकता है कि उसने पहली आईडी चुनी हो न कि सबसे कम कीमत वाली पंक्ति। एकमात्र कॉलम जो सही था वह MIN(r.price) था, लेकिन जैसा कि आपने देखा कि फ़ंक्शन ने परिणाम में अन्य कॉलम को प्रभावित नहीं किया।