Anda sepertinya tidak mendapatkan banyak jawaban - jadi inilah sesuatu jika Anda tidak akan mendapatkan 'bagaimana melakukannya dalam SQL murni' yang benar. Abaikan solusi ini jika ada sesuatu yang SQLish - ini hanya pengkodean defensif, tidak elegan.
Jika Anda ingin mendapatkan jumlah semua data dengan musim yang sama mengapa menghapus catatan duplikat - ambil saja di luar, jalankan loop foreach, jumlahkan semua data dengan nilai musim yang sama, perbarui tabel dengan nilai yang benar dan hapus entri yang tidak perlu. Berikut salah satu cara untuk melakukannya (kode semu):
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]