6. 並べ替え(ソート)

158 Views

January 12, 22

スライド概要

(リレーショナルデータベースの基本)(全15回)
URL: https://www.kkaneko.jp/cc/ds/index.html

profile-image

金子邦彦(かねこくにひこ) 福山大学・工学部・教授 ホームページ: https://www.kkaneko.jp/index.html 金子邦彦 YouTube チャンネル: https://youtube.com/user/kunihikokaneko

シェア

埋め込む »CMSなどでJSが使えない場合

各ページのテキスト
1.

6. 並べ替え(ソート) URL: https://www.kkaneko.jp/cc/ds/index.html 金子邦彦 謝辞:この資料では「いらすとや」のイラストを使用しています 1

2.

アウトライン 番号 項目 説明時間の 目安 6-1 並べ替え(ソート) 4分 6-2 SQL での並べ替え(ソート) 5分 6-3 Access を用いた並べ替え(ソート)の実 演・実習 22分 2

3.

リレーショナルデータベースでの並べ替え(ソート) 米国成人調査データ 母国で集計、その行数で 並べ替え(ソート) 3

4.

今日の内容 • SQL を用いた並べ替え(ソート)の方法、そのバリエーショ ンを知る 並べ替え(ソート)の種類:昇順、降順 並べ替え(ソート)に使う属性(複数設定可能) order by は、SQL での並べ替え(ソート) 4

5.

6-1. 並べ替え(ソート) 5

6.

昇順と降順 得点の昇順で 並べ替え 元データ (小から大) 得点の降順で 並べ替え (大から小) 6

7.

並べ替え(ソート)に用いる属性 氏名の昇順で 並べ替え (小から大) 氏名の降順で 並べ替え (小から大) 得点の昇順で 並べ替え (小から大) 得点の降順で 並べ替え (大から小) 7

8.

6-2. SQL での並べ替え(ソー ト) 8

9.

リレーショナルデータベースシステム データベースシステムの一種 コンピュータ 記憶 装置 リレーショナル リレーショナル データベース データベース 管理システム たくさんのテーブルが格納される あわせて リレーショナルデータベースシステム 9

10.

SQL での並べ替え(ソート)の書き方 select ○, ○, ○ from <並べ替え(ソート)したいテーブル名> order by <並べ替え(ソート)の属性(複数可能)> 昇順: 降順: 何も付けない DESC を付ける where, group by などを付け加えることもある 10

11.

並べ替え(ソート)を行う問い合わせ(クエリ) の例 並べ替え(ソート)結果は 1つのテーブル select * from 採点結果 order by 得点; 問い合わせ(クエリ) のコマンド 採点結果テーブル 11

12.

並べ替え(ソート)を行う問い合わせ(クエリ) のバリエーション select * from 採点結果 order by 得点; 昇順 select * from 採点結果 order by 得点 desc; 降順 昇順と降順の違い 12

13.

6-3. Access を用いた並べ替え (ソート)の実演・実習 13

14.

実演・実習で使うデータベース 米国成人調査データ (1994年、米国における統計調査データのうち 32561 人分) ※ このデータを使います (演習では、特定の職業、学歴、性別、母国を差別的に見ないようにしてください) データの出典:Lichman, M. (2013). UCI Machine Learning Repository [http://archive.ics.uci.edu/ml]. Irvine, CA: University of California, School of Information and Computer Science (米国) 14

15.

実演・実習用のデータベースファイル • 実演・実習用の Access データベースファイル ※ セレッソの利用者は,セレッソからダウンロー ド可能 • 「コンテンツの有効化」のメッセージが出たとき は、確認のうえ、次にすすむ • つぎのような表示が出たときは、確認のうえ、 「はい」 15

16.

米国成人調査データ 16

17.

SELECT * FROM 米国成人調査データ ORDER BY 年齢; ・空白文字や *は半角 ・「;」は最後にだけ 年齢による並べ替え.昇順. 17

18.

SELECT * FROM 米国成人調査データ ORDER BY 年齢 DESC; ・空白文字や *は半角 ・「;」は最後にだけ 年齢による並べ替え.降順. 18

19.

• 今度は,教育年数での並べ替え(ソート)を考え る • 昇順と降順 19

20.

SELECT * FROM 米国成人調査データ ORDER BY 教育年数; ・空白文字や *は半角 ・「;」は最後にだけ 教育年数による並べ替え.昇順. 20

21.

SELECT * FROM 米国成人調査データ ORDER BY 教育年数 DESC; ・空白文字や *は半角 ・「;」は最後にだけ 教育年数による並べ替え.降順. 21

22.

• 今度は,年齢と教育年数での並べ替え(ソート) を考える. • 年齢を優先.同じ年齢の人は教育年数で並べ替え (ソート) • 昇順と降順 22

23.

SELECT * FROM 米国成人調査データ ORDER BY 年齢, 教育年数; ・空白文字や , や *は半角 ・「;」は最後にだけ 年齢,教育年数による並べ替え.昇順. 23

24.

SELECT * FROM 米国成人調査データ ORDER BY 年齢 DESC, 教育年数 DESC; ・空白文字や , や *は半角 ・「;」は最後にだけ 年齢,教育年数による並べ替え.降順. 24

25.

選択と並べ替えを1つのSQLで! where … で選択し、並べ替え(ソート)も行う 元データ ある条件で選択 並べ替え (ソート) 結果 25

26.

SELECT * FROM 米国成人調査データ WHERE 年齢 BETWEEN 20 AND 30 ORDER BY 年齢; ・空白文字や *は半角 ・「;」は最後にだけ 年齢で選択.年齢による並べ替え.昇順. 26

27.

SELECT * FROM 米国成人調査データ WHERE 年齢 > 80 ORDER BY 年齢; ・空白文字や *は半角 ・「;」は最後にだけ 年齢で選択.年齢による並べ替え.昇順. 27

28.

SELECT * FROM 米国成人調査データ WHERE 年齢 > 80 ORDER BY 年齢 DESC; ・空白文字や *は半角 ・「;」は最後にだけ 年齢で選択.年齢による並べ替え.降順. 28

29.

集計・集計する.並べ替え(ソート)も行う 元データ 集計・集約 並べ替え (ソート) 結果 29

30.

SELECT 母国, COUNT(*) FROM 米国成人調査データ GROUP BY 母国 ORDER BY COUNT(*); ・空白文字や *は半角 ・「;」は最後にだけ 母国で集計.行数による並べ替え.昇順. 30

31.

関連資料 • リレーショナルデータベース序論(全4回) 全体を知る. https://www.kkaneko.jp/cc/di/index.html • リレーショナルデータベースの基本(全15回) 基礎を学ぶ. https://www.kkaneko.jp/cc/ds/index.html • リレーショナルデータベース演習(全15回) 演習により修得する. https://www.kkaneko.jp/cc/de/index.html 31