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
95
第11回Net講座2018
北海道科学大学 電子計算機研究部
January 08, 2019
Tweet
Share
More Decks by 北海道科学大学 電子計算機研究部
See All by 北海道科学大学 電子計算機研究部
第12回Network講座2019
densan
1
53
第11回Network講座2019
densan
0
68
第10回Network講座2019
densan
0
44
第09回Network講座2019
densan
1
160
第08回Network講座2019
densan
0
47
第07回Network講座2019
densan
0
45
第06回Network講座2019
densan
0
69
第05回Network講座2019
densan
0
49
第04回Network講座2019
densan
0
94
Other Decks in Education
See All in Education
Avoin jakaminen ja Creative Commons -lisenssit
matleenalaakso
0
1.8k
Are puppies a ranking factor?
jonoalderson
0
200
Design Guidelines and Principles - Lecture 7 - Information Visualisation (4019538FNR)
signer
PRO
0
2.3k
Data Representation - Lecture 3 - Information Visualisation (4019538FNR)
signer
PRO
1
2.3k
横浜翠嵐高校 職業講話 / Talk for YOKOHAMA SUIRAN 2024
mura_mi
0
170
FinOpsスキルの効率的な上げ方 #ochacafe
chacco38
1
130
ThingLink
matleenalaakso
28
4k
Ch4_-_Partie_2.pdf
bernhardsvt
0
120
Data Processing and Visualisation Frameworks - Lecture 6 - Information Visualisation (4019538FNR)
signer
PRO
1
2.3k
子どものためのプログラミング道場『CoderDojo』〜法人提携例〜 / Partnership with CoderDojo Japan
coderdojojapan
4
15k
Sanapilvet opetuksessa
matleenalaakso
0
32k
IMU-00 Pi
kanaya
0
270
Featured
See All Featured
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Into the Great Unknown - MozCon
thekraken
37
1.7k
Unsuck your backbone
ammeep
670
57k
Git: the NoSQL Database
bkeepers
PRO
430
65k
Code Review Best Practice
trishagee
67
18k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
119
51k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
60k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
30k
Building an army of robots
kneath
304
45k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Designing Experiences People Love
moore
141
24k
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
本日の講座はここまで お疲れ様でした