Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
第11回Net講座2018
Search
北海道科学大学 電子計算機研究部
January 08, 2019
Education
0
93
第11回Net講座2018
北海道科学大学 電子計算機研究部
January 08, 2019
Tweet
Share
More Decks by 北海道科学大学 電子計算機研究部
See All by 北海道科学大学 電子計算機研究部
第12回Network講座2019
densan
1
51
第11回Network講座2019
densan
0
67
第10回Network講座2019
densan
0
43
第09回Network講座2019
densan
1
150
第08回Network講座2019
densan
0
46
第07回Network講座2019
densan
0
43
第06回Network講座2019
densan
0
67
第05回Network講座2019
densan
0
48
第04回Network講座2019
densan
0
84
Other Decks in Education
See All in Education
ThingLink
matleenalaakso
28
3.8k
SQL初級中級_トレーニング【株式会社ニジボックス】
nbkouhou
0
23k
Adobe Analytics入門講座【株式会社ニジボックス】
nbkouhou
0
23k
Human Perception and Cognition - Lecture 4 - Human-Computer Interaction (1023841ANR)
signer
PRO
0
750
Mathematics used in cryptography around us
herumi
2
370
Utiliser Linkedin pour améliorer son personal branding
martine
0
100
Design Guidelines and Models - Lecture 5 - Human-Computer Interaction (1023841ANR)
signer
PRO
0
720
Image compression
hachama
0
200
1216
cbtlibrary
0
250
Introduction - Lecture 1 - Human-Computer Interaction (1023841ANR)
signer
PRO
0
1.8k
LinkedIn
matleenalaakso
0
3.4k
子どものためのプログラミング道場『CoderDojo』〜法人提携例〜 / Partnership with CoderDojo Japan
coderdojojapan
4
14k
Featured
See All Featured
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Side Projects
sachag
452
42k
Scaling GitHub
holman
458
140k
How GitHub (no longer) Works
holman
311
140k
The Invisible Side of Design
smashingmag
298
50k
Building Flexible Design Systems
yeseniaperezcruz
327
38k
Visualization
eitanlees
146
15k
Building Your Own Lightsaber
phodgson
103
6.1k
Adopting Sorbet at Scale
ufuk
73
9.1k
The World Runs on Bad Software
bkeepers
PRO
65
11k
Statistics for Hackers
jakevdp
796
220k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
Transcript
ネットワークチーム 第11回 北海道科学大学 電子計算機研究部
INDEX ⚫ データベース ⚫ SQL ⚫ 演習 2
データベース
データベースとは ⚫ データを蓄積するシステムのこと ⚫ 検索や閲覧が 超高速で できる ⚫ 一般的には関係データベース (Relational
Database, RDB)を指す 4
関係データベースとは ⚫ Excelのような2次元の表で構成されており この表をテーブルという ⚫ テーブルの列を Column 行を Row という
⚫ 関係データベースを管理するシステムを Relational Database Management System (RDBMS)と呼ぶ ⚫ SQL で操作する 5
使ってみよう Raspberry Pi にSSH接続し Maria DB にログインする 6 pi@raspberrypi:~ $
sudo mariadb 1. MariaDB [(none)]> show databases; ログインできたら データベース一覧を確認してみる 2.
使ってみよう データベースを切り替える 7 3. MariaDB [(none)]> use nwdb; テーブルを確認してみよう 4.
MariaDB [nwdb]> show tables;
使ってみよう テーブルの内容を表示してみよう 8 5. MariaDB [nwdb]> select * from members;
自分のデータを追加してみよう 6. MariaDB [nwdb]> insert into members values(番号, ‘名前');
SQL
SQLとは ⚫ データベースを操作するための言語 ⚫ 操作の命令はたったの4つだけ! →4大命令, データ操作言語(DML) ⚫ DML +
修飾語 のように記述する 10 SELECT * FROM members; DML
1. SELECT(検索) 11 構文 SELECT 列 FROM テーブル [WHERE 条件]
SELECT id FROM members; 例 SELECT * FROM members WHERE id=1; SELECT * と記述すると 全ての要素を対象とする [ ] の中はオプション
2. UPDATE(更新) 12 構文 UPDATE テーブル SET 列=値 [WHERE 条件]
UPDATE members SET name = 'TEACHER’ WHERE id = 0; SELECT * FROM members; 例 ,(カンマ)で区切ることで 複数の条件や値を指定できる
3. DELETE(削除) 13 構文 DELETE FROM テーブル [WHERE 条件] DELETE
FROM members WHERE id = 0; SELECT * FROM members; 例 WHERE句で条件を指定しないと テーブルが全て削除される! DELETE FROM members; 全削除!!
4. INSERT(追加) 14 構文 INSERT INTO テーブル [列1, 列2…] VALUES
(値1, 値2…) INSERT INTO members (id, name) VALUES(0, 'Kagawa Seigo’); SELECT * FROM members; 例 すべての列に値を入れる場合 [列1, 列2…]は省略可能
その他 15 SELECT id AS '番号' FROM members; AS 句をつけることで別名を定義できる
SELECT id, name FROM members; ,(カンマ)で区切ることで 複数の条件や値を指定できる 予約語(SELECT, FROMなど)は小文字でも良い
演習 11-1 1. 偉大な前ネットリーダーの名前のみを 表示してください 2. 3桁のidと名前を持つデータを 追加してください(内容は適当でOK) 3. 2で追加したデータの
name を id を絞り込み条件とするSQLで 表示してください 4. 2で追加したデータと自分のデータの2つの id と name を表示してください 16
WHERE(絞り込み) 17 構文 WHERE 条件式 id が1 以下のデータを表示したい SELECT *
FROM members WHERE id < 1; 例 JavascriptやPythonのように 演算子を使用することができる!
LIKE 演算子(パターンマッチング) 18 構文 条件式 LIKE パターン文字列 name が K
から始まるデータを表示したい SELECT * FROM members WHERE name LIKE 'K%'; 例 パターン 意味 % 0文字以上の文字列 _ 1文字
BETWEEN 演算子(範囲) 19 構文 式 BETWEEN 値1 AND 値2 id
が 1以上3以下のデータを表示したい SELECT * FROM members WHERE id BETWEEN 1 AND 3; 例 値1 以上 値2 以下 値1 <= x <= 値2
IN 演算子(複数) 20 構文 式 IN (値1, 値2, …) id
が 0, 1, 2, 3 と一致するデータを表示したい SELECT * FROM members WHERE id IN (0, 1, 2, 3); 例 式 NOT IN (値1, 値2, …)
AND OR 演算子(条件の組み合わせ) 21 構文 条件式1 AND 条件式2 id が
1以上 かつ name が前ネットリーダーのデータを表示したい SELECT * FROM members WHERE id >= 1 AND name = 'Kagawa Seigo'; 例 条件式1 OR 条件式2 データなし!
演習 11-2 1. id が 1, 3, 5 以外のデータを 表示してください
2. name に a が含まれるデータを 表示してください 3. id が 1以上5以下 かつ name が i で終わる データを表示してください。 22
ORDER BY(ソート) 23 構文 SELECT 列 FROM テーブル ORDER BY
列 [ASC/DESC] payment の内容を日付順に降順で表示したい。 SELECT * FROM payment ORDER BY time DESC; 例 ASC:昇順 DESC:降順 省略した場合は昇順
JOIN(結合) 24 構文 SELECT 列 FROM テーブル JOIN テーブル ON
結合条件 members と account を結合して表示したい SELECT account.id, name, memo FROM account JOIN members ON account.id = members.id; 例 + =
演習 11-3 1. payment の内容を購入金額順に 昇順で表示してください。 2. SQLを使用して以下の表を表示してください。 25
本日の講座はここまで お疲れ様でした