情報処理技術者試験の午前問題対策のホームページです。
趣 旨 

当ホームページのアクセス数No.1の『SQL講座』です。
マイクロソフトのAccessというデータベースソフトを利用して、10回の講義形式で、SQLを学んでいきます。

初級シスアドから目指すSQLというコンセプトのもと、なるべく分かりやすく、かつ、注意すべき点などを随所に盛り込みながら、解説していきます。

SQL講座のTopへ戻る

MENU
第4時限目:集合関数指定

MS-AccessでSQL
基本SELECT文
関係関数指定
集合関数指定
GROUP BY と HAVING
並べ換え
表の結合
挿入・更新・削除
副問合せ
練習問題






この章では、 集合関数についてみていきましょう。

難しいそうな感じがしますが、表のある列で一番大きい値(または小さい値)を求めるとか平均値や合計を
求めるといった処理をする関数です。


■ COUNT 関数


 SELECT COUNT ( <列名リスト> ) FROM <テーブル名リスト>

 テーブル名リストから選択された行の数をカウントする。

/* ch04-1 */

SELECT COUNT ( * )
FROM 社員 ;



 テーブル「社員」の全ての人数をカウントします。

< 実行結果ch04-1 >


/* ch04-2 */

SELECT COUNT ( 住所2 )
FROM 仕入先 ;



 テーブル「仕入先」から住所2 が、NULLでない行の件数をカウントします。

< 実行結果ch04-2 >


/* ch04-3 */

SELECT COUNT ( * ) AS 社員数
FROM 社員 ;



 テーブル「社員」の全ての人数を表示し、その列名を社員数とします。

< 実行結果ch04-3 >


<注意>
 JIS規格 SQL では、COUNT ( DISTINCT 部署 )のように、DISTINCT を付けた列名リストを指定すると、
 部署のうち重複を除いた名称の件数が返ります。
 しかし、MS-Access ではこの表現は使用できません。



■ MAX 関数


 SELECT MAX ( <列名リスト> ) FROM <テーブル名リスト>

 テーブル名リストから選択された列名リストの最大値を求めます。

/* ch04-4 */

SELECT MAX ( 単価 )
FROM 受注明細 ;



 テーブル「受注明細」から、単価の最大値を求めます。

< 実行結果ch04-4 >



■ MIN 関数


 SELECT MIN ( <列名リスト> ) FROM <テーブル名リスト>

 テーブル名リストから選択された列名リストの最小値を求めます。

/* ch04-5 */

SELECT MIN ( 単価 )
FROM 受注明細 ;



 テーブル「受注明細」から、単価の最小値を求めます。

< 実行結果ch04-5 >



■ AVG 関数


 SELECT AVG ( <列名リスト> ) FROM <テーブル名リスト>

 テーブル名リストから選択された列名リストの平均値を求めます。

/* ch04-6 */

SELECT AVG ( 単価 )
FROM 商品 ;



 テーブル「商品」から、単価の平均値を求めます。

< 実行結果ch04-6 >



■ SUM 関数


 SELECT SUM ( <列名リスト> ) FROM <テーブル名リスト>

 テーブル名リストから選択された列名リストの合計を求めます。

/* ch04-7 */

SELECT SUM ( 在庫 )
FROM 商品 ;



 テーブル「商品」から、在庫の合計を求めます。

< 実行結果ch04-7 >



■ WHERE 句をつけて

/* ch04-8 */

SELECT MAX ( 単価 )
FROM 受注明細
WHERE 数量 = 50 ;



 テーブル「受注明細」から数量が 50 である単価の最大値を求めます。

< 実行結果ch04-8 >






第3時限目へ  第5時限目へ


このページのTopへ戻る
インフォメーション



© 2005 情報処理技術者試験対策 All rights reserved.
[PR] 情報セキュリティアドミニストレータ試験対策セキュアド試験午前問題徹底攻略セキュアド勉強会特訓PDCA式で学ぼう情報セキュリティ情報処理技術者試験 午前問題攻略
テクニカルエンジニア(情報セキュリティ)試験対策転職 就職ネイティブ音声日常英会話空に巻かれて