あなたは多くの答えを得ていないようです - それで、あなたが正しい「純粋なSQLでそれを行う方法」を得られない場合は、ここに何かがあります. SQL っぽいものがある場合は、この解決策を無視してください。それは防御的なコーディングであり、エレガントではありません。
重複レコードを削除する同じ季節のすべてのデータの合計を取得する場合は、外部に取得し、foreach ループを実行し、同じ季節の値ですべてのデータを合計し、正しい値でテーブルを更新し、不要なエントリを削除します。これを行う方法の 1 つを次に示します (疑似コード):
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]
プレ>