SQL Serverで犬種ごとの平均体重を求める集計クエリの書き方

SQL Server

犬の個体情報を管理するSQL Serverのテーブルにおいて、犬種ごとの平均体重を求める方法について説明します。特に、SQLクエリで犬種ごとの平均体重をどのように計算するのか、具体的な集計方法を紹介します。

SQL Serverのテーブル構成

まずは、SQL Serverのテーブルの構成を確認します。例えば、犬の情報を格納するテーブルが以下のような構成であると仮定します。

CREATE TABLE dogs ( id INT PRIMARY KEY, breed VARCHAR(50), weight DECIMAL(5, 2) );

このテーブルには、犬のID、犬種(breed)、そして体重(weight)が格納されています。ここで、犬種ごとの平均体重を求めるクエリを作成します。

犬種ごとの平均体重を求めるクエリ

犬種ごとの平均体重を求めるためのSQLクエリは、GROUP BY句を使って犬種ごとにグループ化し、AVG()関数で体重の平均を計算します。以下のようなクエリを使用します。

SELECT breed, AVG(weight) AS average_weight FROM dogs GROUP BY breed;

このクエリでは、犬種(breed)ごとにグループ化し、それぞれの犬種に対して体重(weight)の平均を計算しています。結果として、犬種ごとの平均体重が得られます。

クエリの解説

このクエリでは、以下の操作が行われています。

  • SELECT breed: 犬種(breed)を選択します。
  • AVG(weight) AS average_weight: 体重(weight)の平均を計算し、それをaverage_weightという名前で表示します。
  • FROM dogs: dogsテーブルからデータを取得します。
  • GROUP BY breed: 犬種ごとにグループ化し、それぞれの犬種に対して平均体重を計算します。

これにより、犬種ごとの平均体重が算出されます。

応用例: フィルタリングと並べ替え

さらに、犬種ごとの平均体重を計算した結果をフィルタリングしたり、並べ替えたりすることも可能です。例えば、平均体重が20kg以上の犬種だけを取得したい場合、WHERE句を使用します。

SELECT breed, AVG(weight) AS average_weight FROM dogs GROUP BY breed HAVING AVG(weight) >= 20;

また、結果を平均体重の降順で並べ替えたい場合は、ORDER BY句を使用します。

SELECT breed, AVG(weight) AS average_weight FROM dogs GROUP BY breed HAVING AVG(weight) >= 20 ORDER BY average_weight DESC;

まとめ

SQL Serverで犬種ごとの平均体重を求めるには、GROUP BY句とAVG()関数を使用することで簡単に集計できます。さらに、WHERE句やORDER BY句を使って、結果をフィルタリングしたり、並べ替えたりすることができます。この方法を活用して、データの集計や分析を効率よく行いましょう。

コメント

タイトルとURLをコピーしました