メインコンテンツにスキップ
モジュール 2 · レッスン 4 / 4コース内の 8/57~8 min
モジュールのレッスン (4/4)

カウントと集計: COUNT、AVG、MAX

これまでのところ、すべての SELECT はテーブルの各行に対して 1 行を返しました。 集計関数 はその逆を行い、多くの行を読み取って返します。 それらを要約する単一の値。

最も一般的なものは次のとおりです。

  • COUNT(*) — 行数。
  • AVG(column) — 数値の平均 (NULL は無視されます)。
  • MAX(column) / MIN(column) — 最大値/最小値。
  • SUM(column) — 数値の合計。
SQL
SELECT COUNT(*),
       AVG(salary),
       MAX(salary)
FROM employees;

集計がテーブル全体に適用される場合 (GROUP BY なし) 次のモジュールで説明します) 結果は、関係なく 単一行 です ソーステーブルに含まれる行数。

WHEREとの組み合わせ

WHERE は集計の前**にフィルターします。集計は行に対してのみ機能します。 フィルターを通過したもの。

SQL
-- Stipendio medio dei soli dipendenti del Marketing (department_id = 3):
SELECT AVG(salary)
FROM employees
WHERE department_id = 3;

試してみてください

運動#sql.m2.l4.e1
試行回数: 0読み込み中…

2020 年 1 月 1 日以降に何人の従業員が雇用されましたか?単一の数値 (1 行、1 列) を返します。

エディターを読み込み中…
ヒントを表示

行数をカウントする関数は COUNT(*) です。

3 回の試行後に解決策が利用可能になります

復習演習

運動#sql.m2.l4.e2
試行回数: 0読み込み中…

単一のクエリで、マーケティング部門 (Department_id = 3) の従業員の平均給与 (AVG) と最大給与 (MAX) を計算します。 1 行 2 列。

エディターを読み込み中…
ヒントを表示

複数の集計関数を同じ SELECT 内にカンマで区切って配置できます。

3 回の試行後に解決策が利用可能になります