ऐसा लगता है कि आपको बहुत सारे उत्तर नहीं मिल रहे हैं - इसलिए यहां कुछ ऐसा है यदि आपको 'शुद्ध SQL में इसे कैसे करें' सही नहीं मिलेगा। अगर कुछ भी SQLish है तो इस समाधान पर ध्यान न दें - यह सिर्फ एक रक्षात्मक कोडिंग है, सुरुचिपूर्ण नहीं है।
यदि आप एक ही सीज़न के साथ सभी डेटा का योग प्राप्त करना चाहते हैं तो डुप्लिकेट रिकॉर्ड क्यों हटा रहे हैं - बस इसे बाहर प्राप्त करें, फ़ोरैच लूप चलाएं, समान सीज़न मान के साथ सभी डेटा का योग करें, सही मानों के साथ तालिका अपडेट करें और अनावश्यक प्रविष्टियों को हटा दें। इसे करने का एक तरीका यह है (स्यूडोकोड):
productsArray = SELECT * FROM products
processed = array (associative)
foreach product in productsArray:
if product[season] not in processed:
processed[season] = product[quantity]
UPDATE products SET quantity = processed[season] WHERE id = product[id]
else:
processed[season] = processed[season] + product[quantity]
DELETE FROM products WHERE id = product[id]