SQL Server

SQLServerで「WITH ROLLUP」を使って小計、総合計を出力する

投稿日:2014/11/05 更新日:

SQLServerでは「WITH ROLLUP」を利用すると簡単に小計、総合計を出力することができます。

「WITH ROLLUP」を使って小計、総合計を出力

SQLで小計、総合計を出力を出力するにはGroup BY句に「WITH ROLLUP」を指定します、

テーブル準備

男女別、教科別の得点を管理できるテーブルを作成します。

データ準備

テーブルに国語、数学、英語ごとに男女それぞれ2名分のデータを作成します。

WITH ROLLUPを使って小計行、総合計行を取得

「WITH ROLLUP」を使って実際に教科ごと、男女別に小計行と総合計行を取得します。

実行結果は

教科 性別 合計点
英語 BOY 30
英語 GIRL 70
英語 BOYS AND GIRLS 100
国語 BOY 35
国語 GIRL 105
国語 BOYS AND GIRLS 140
数学 BOY 50
数学 GIRL 115
数学 BOYS AND GIRLS 165
全教科合計 BOYS AND GIRLS 405

となり、男女別の小計行と総合計行が出力されています。

ちなみに「WITH ROLLUP」がないと

教科 性別 合計点
英語 BOY 30
国語 BOY 35
数学 BOY 50
英語 GIRL 70
国語 GIRL 105
数学 GIRL 115

と小計行と総合計行が出力されません。
あたりまえですね。

テーブル削除

テーブルを削除しておきます。

このように「WITH ROLLUP」を使うと簡単に小計行と総合計行を取得することができますね。

当サイトのおすすめ記事

パソコン 1

当サイトは約5年間、さくらのレンタルサーバで運用させて頂きました。 何かトラブルがあったわけではないのですが、WordPressの表示速度を速くしたくてSSD搭載のレンタルサーバーで運用してみることに ...

プログラミング 2

SQLでIFを書けばWHERE句の内容を変えて検索できますが、条件ごとに同じようなSQLを 複数回書くのは面倒なので、1行で分岐できないかと言う事でSQLを作って見ました。 Contents1 SQL ...

SQLServer 3

SQLServerで発生するエラーコードをSQLで取得する SQLServerで発生したエラーコードの内容を メッセージが定義されているテーブルから取得します。 エラーコードを取得するSQL SQLs ...

4

Contents1 SQLServerでテーブル型を戻り値とする関数を作る1.1 テーブル型を戻り値とする関数の作成1.2 呼び出しかた SQLServerでテーブル型を戻り値とする関数を作る SQL ...

5

Contents1 アフィリエイトで即効成果を出す1.1 自分で買えば確実に成果が上がる1.2 A8.netでは自分で購入してもOKなものがある1.2.1 A8.netにサイトを登録する1.2.2 承 ...

-SQL Server
-, ,

Copyright© ソフトウェア開発日記 , 2018 All Rights Reserved.