MySQL の SUM 関数で動作するように操作できないように見えるクエリがあります。
ここに私が欲しいものがあります:
UPDATE account_seeds AS a
INNER JOIN b AS b ON b.accountID = a.accountID AND a.areaID = b.areaID
INNER JOIN b_seed AS s ON s. buildingID = b. buildingID
INNER JOIN seed_class AS c ON c.seedID = s.シード ID
SET a.amount = a.amount + SUM(s.amount)
WHERE b.status='active' AND a.seedID = s.seedID
今では明らかに、SUM を分離せずに更新で使用することはできません。選択クエリに参加しようとしましたが、頭がよくわかりません。基本的な前提は、特定のアカウントのエリアでそのタイプの合計シードを増やすシード値を持つ複数の建物 (行) があることです。合計がなければ、一致するシード値を持つ建物の 1 つだけを更新します。