Hatena::ブログ(Diary)

crazyuplog このページをアンテナに追加 RSSフィード

2009-04-20 毎週月曜日はナポリタンの日

DataBase vol.3

集合関数を使う

個数COUNT
平均AVG
総和SUM
最大MAX
最小MIN
SELECT
	関数名(列名または演算式) AS 別名
FROM
	テーブル名
;
  • 単純な列名だけでなく演算式が使える

問題7-1

テーブルのCustomersの顧客数を求めて、お得意様数と別名を付けなさい。

SELECT
	COUNT(CustomerID) AS "お得意様数"
FROM
	Customers
;

※どれを数えても同じなので適当なCustomerIDを使用してカウントした。

実行結果
$ mysql5 -uroot sql_drill < 042001.sql 
お得意様数
30

問題7-2

テーブルEmployeesのWeight合計を求め、社員体重合計と別名をつけなさい。

SELECT
	SUM(Weight) AS "社員体重合計"
FROM
	Employees
;
実行結果
$ mysql5 -uroot sql_drill < 042002.sql 
社員体重合計
1770

問題7-3

テーブルProductsのPriceの最大値を求め、最高額価格と別名をつけなさい。

SELECT
	MAX(Price) AS "最高額価格"
FROM
	Products
;
実行結果
$ mysql5 -uroot sql_drill < 042003.sql 
最高額価格
3200

問題7-4

テーブルEmployeesのWeightの最小値を求め、最軽量体重と別名をつけなさい。

SELECT
	MIN(Weight) AS "最軽量体重"
FROM
	Employees
;
実行結果
$ mysql5 -uroot sql_drill < 042004.sql 
最軽量体重
38

問題7-5

テーブルEmployeesのHeight、Weightの平均値を求め、平均身長、平均体重と別名をつけなさい。

SELECT
	AVG(Height) AS "平均身長"
	,AVG(Weight) AS "平均体重"
FROM
	Employees
;
実行結果
$ mysql5 -uroot sql_drill < 042005.sql 
平均身長	平均体重
164.6000	59.0000

ある条件でレコードを絞り込む

SELECT
	選択リスト
FROM
	テーブル名
WHERE
	条件
;

例)180cm以上の社員を絞り込む

SELECT
	EmployeeName AS "氏名"
	,Height AS "身長"
FROM
	Employees
WHERE
	Height >= 180
;
  • WHERE句は実務に頻繁に使われる。
実行結果
$ mysql5 -uroot sql_drill < 042006.sql 
氏名	身長
ごま	180
ぱんだ	185
くま	190

例題

身長150cm以下の人で一番背が高い身長は?

SELECT
	MAX(Height) AS "身長"
FROM
	Employees
WHERE
	height <= 150
;
Copyright © crazyup. All rights reserved.