私は最初のフルタイムの仕事で約1週間SQLを使用していましたが、私は別々の列を組み合わせたクエリからいくつかの統計を計算しようとしていますテーブル。SQL:クエリから平均を計算する方法
具体的には、フィルタを適用した結合テーブル(または制約?私はSQL用語ではっきりしていない)から平均を計算しようとしています。
research on Googleをやってから、私は平均値を計算する方法を学びました:
SELECT AVG(column_name)
FROM table_name
私がいる問題は、これが唯一のデータベース内の既存のテーブルで動作するように思われることである新しいクエリで、私が作成していません。次のように
私のコードの簡易版である:
SELECT
Animal_Facts.Animal_Name, Animal_Facts.Prev_Reg_Amount,
Names.Given_Name, Animal_Class.Class_Description
FROM
Names
INNER JOIN
Animal_Facts ON Names.Name_Key = Animal_Facts.Name_Key
INNER JOIN
Animal_Class ON Animal_Facts.Class_Key = Animal_Class.Class_Key
このクエリは作成されます年金受給者などが所有Class_Description
は、動物がdesexedされているかどうかを記述する3つのテーブル、マイクロチップからの4つの列を結合し、そしてPre_Reg_Amount支払われた登録料です。
私は年金受給者が支払った平均料金を見つけたいので、私はテーブルをフィルタリングする次のコード行が含ま:
AND Animal_Class.Class_Description LIKE ('%pensioner%')
をそして、私は追加の平均を計算する:
SELECT AVG(Animal_Facts.Prev_Reg_Amount) from Animal_Facts
を
私の総コードは
SELECT
Animal_Facts.Animal_Name, Animal_Facts.Prev_Reg_Amount,
Names.Given_Name, Animal_Class.Class_Description
FROM
Names
INNER JOIN
Animal_Facts ON Names.Name_Key = Animal_Facts.Name_Key
INNER JOIN
Animal_Class ON Animal_Facts.Class_Key = Animal_Class.Class_Key
AND Animal_Class.Class_Description LIKE ('%pensioner%')
SELECT AVG(Animal_Facts.Prev_Reg_Amount)
FROM Animal_Facts
です。問題は、この計算をExce私は実際に年金受給者のデータの平均を取得するのではなく、すべてのデータの平均を取得しています。 SQLで作成したテーブルから直接平均(および他の統計)を計算する方法はありますか?
注:これらの統計情報はすべてExcelにエクスポートすることで計算できますが、時間がかかります。私はむしろSQLの中でこれを行う方法を学ぶだろう。
SQLを使用する世界へようこそ。ここでは草が非常に緑色です。 – mendosi
@mendosi - ありがとうございました! –