適用対象:SQL Server
集計関数
集計関数を使用すると、テーブル内のすべての値の概要を作成できます。 たとえば、次のようなクエリを作成して、titles
テーブル内のすべての書籍の合計価格を表示できます。
SELECT SUM(price)
FROM titles;
複数の列を持つ集計関数を使用して、同じクエリに複数の集計を作成します。 たとえば、price
列の合計と discount
列の平均を計算するクエリを作成できます。
同じクエリで、同じ列をさまざまな方法 (集計、カウント、平均など) で集計できます。 たとえば、次のクエリは、price
テーブルの titles
列を平均して集計します。
SELECT AVG(price),
SUM(price)
FROM titles;
検索条件を追加する場合は、その条件を満たす行のサブセットを集計できます。
手記
また、テーブル内のすべての行、または特定の条件を満たす行をカウントすることもできます。 詳細については、「 テーブル内の行数のカウント (Visual Database Tools)」を参照してください。
テーブル内のすべての行に対して 1 つの集計値を作成すると、集計値自体のみが表示されます。 たとえば、titles
テーブルのprice
列の値を合計する場合、個々のタイトルやパブリッシャー名なども表示されません。
手記
小計を作成する (つまり、グループを作成する) 場合は、各グループの列値を表示できます。 詳細については、「クエリ結果 (Visual Database Tools) での行のグループ化の」を参照してください。
すべての行の集計値
集計するテーブルがダイアグラム ペインに既に存在することを確認します。
[ダイアグラム] ウィンドウの背景を右クリックし、ショートカット メニューから [グループ化] 選択します。 クエリおよびビュー デザイナー ツール (Visual Database Tools) は、[抽出条件] ペインのグリッドに [グループ化] 列を追加します。
集計する列を抽出条件ペインに追加します。 列が出力用にマークされていることを確認します。
クエリおよびビュー デザイナーは、集計する列に列の別名を自動的に割り当てます。 このエイリアスは、より意味のあるエイリアスに置き換えることができます。 詳細については、「 列のエイリアスの作成 (Visual Database Tools)」を参照してください。
[グループ化] グリッド列で、次のような適切な集計関数を選択します。合計、平均、最小、最大、カウント。 結果セット内の一意の行のみを集計する場合は、
DISTINCT
オプション ([個別の最小] など) を使用して集計関数を選択 します。 [ グループ化]、[ 式]、または [場所] は選択しないでください。すべての行を集計する場合、これらのオプションは適用されません。クエリおよびビュー デザイナーは、 SQL ペイン (Visual Database Tools) のステートメント内の列名を、指定した集計関数に置き換えます。 たとえば、SQL ステートメントは次のようになります。
SELECT SUM(price) FROM titles;
クエリで複数の集計を作成する場合は、手順 3 と 4 を繰り返します。
クエリ出力リストに別の列を追加するか、一覧別に並べ替えると、クエリおよびビュー デザイナーによって、グループ化 という用語がグリッドの [グループ化] 列に自動的に入力されます。 適切な集計関数を選択します。
検索条件 (ある場合) を追加して、集計する行のサブセットを指定します。
クエリを実行すると、[結果] ペインに指定した集計が表示されます。
手記
クエリおよびビュー デザイナーでは、グループ化モードを明示的にオフにするまで、SQL ペインの SQL ステートメントの一部として集計関数が保持されます。 そのため、クエリの種類を変更するか、ダイアグラム ペインに存在するテーブルまたはテーブル値オブジェクトを変更することでクエリを変更すると、結果のクエリに無効な集計関数が含まれる可能性があります。