ホームページ > データベース > mysql チュートリアル > SQL UPDATEクエリでSUMなどの集計関数を使用するにはどうすればよいですか?

SQL UPDATEクエリでSUMなどの集計関数を使用するにはどうすればよいですか?

Linda Hamilton
リリース: 2025-01-01 10:03:09
オリジナル
377 人が閲覧しました

How Can I Use Aggregate Functions Like SUM in an SQL UPDATE Query?

SQL 更新クエリの集計関数

この質問は、SUM などの集計関数が SQL 更新でどのように利用できるかを理解することを目的としています。クエリ。提供された例では、別のテーブルの値の合計に基づいてテーブル内の値を更新しようとします。ただし、SET ステートメントが SUM と GROUP BY をサポートしていないという制限があります。

この問題を解決するために、ソリューションではサブクエリを使用して合計を計算し、その結果を更新クエリで使用します。次のコード スニペットは、修正されたアプローチを示しています。

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  
ログイン後にコピー

この修正されたクエリ内:

  1. テーブル 2 のフィールド 3 の一意の値ごとにフィールド 2 の合計を計算するサブクエリが定義されています。 。結果は、t2 という名前の一時テーブルまたはビューに保存されます。
  2. 更新クエリは、JOIN を使用して、共通列 field3 に基づいて table1 と t2 をマージします。
  3. SET ステートメントは、field1 列を更新します。 table1 と対応する field2 をサブクエリで計算された合計値に変換します。

サブクエリを使用することで、このアプローチは、SET ステートメントの制限に効果的に対処し、更新クエリで集計関数を使用できるようにします。

以上がSQL UPDATEクエリでSUMなどの集計関数を使用するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート