ホームページ >データベース >mysql チュートリアル >SQL を使用して別のテーブルの合計でテーブル フィールドを更新するにはどうすればよいですか?
集計関数を使用した SQL 更新クエリ
この質問では、SQL 更新クエリでの集計関数の使用方法について説明します。ユーザーは、別のテーブルの値の合計を使用してテーブル内のフィールドを更新しようとします。ただし、構文上の問題により、クエリは機能しません。
分析
ユーザーが提示した最初のクエリには、2 つの主な欠陥があります:
解決策
これらの問題を解決するには、サブクエリを使用する必要があります。サブクエリは、共通フィールドごとにグループ化して、2 番目のテーブルの値の合計を計算します。このサブクエリの結果は最初のテーブルと結合され、それに応じてフィールドを更新するために使用されます。
正しいクエリ:
UPDATE t1 SET t1.field1 = t2.field2Sum FROM table1 t1 INNER JOIN (select field3, sum(field2) as field2Sum from table2 group by field3) as t2 on t2.field3 = t1.field3
このクエリ内:
以上がSQL を使用して別のテーブルの合計でテーブル フィールドを更新するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。