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
94
第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
44
第09回Network講座2019
densan
1
150
第08回Network講座2019
densan
0
46
第07回Network講座2019
densan
0
44
第06回Network講座2019
densan
0
68
第05回Network講座2019
densan
0
48
第04回Network講座2019
densan
0
87
Other Decks in Education
See All in Education
Security, Privacy and Trust - Lecture 11 - Web Technologies (1019888BNR)
signer
PRO
0
2.7k
2024年度秋学期 統計学 第11回 分布の「型」を考える - 確率分布モデルと正規分布 (2024. 12. 4)
akiraasano
PRO
0
100
Medicare 101 for 2025
robinlee
PRO
0
440
1216
cbtlibrary
0
270
Ch2_-_Partie_3.pdf
bernhardsvt
0
120
Flinga
matleenalaakso
2
14k
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
2.6k
Kaggle 班ができるまで
abap34
1
250
子どものためのプログラミング道場『CoderDojo』〜法人提携例〜 / Partnership with CoderDojo Japan
coderdojojapan
4
15k
<学びの作品化>を促す 学習環境デザインの検討―表現方法の多様さが保障された授業に着目して― /jaet2024
kiriem
0
320
Nodiレクチャー 「CGと数学」講義資料 2024/11/19
masatatsu
1
290
2024年度秋学期 統計学 第6回 データの関係を知る(1)ー相関関係 (2024. 10. 30)
akiraasano
PRO
0
110
Featured
See All Featured
The Language of Interfaces
destraynor
156
24k
Designing Experiences People Love
moore
139
23k
Speed Design
sergeychernyshev
25
760
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
20
2.4k
The Cost Of JavaScript in 2023
addyosmani
47
7.3k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.7k
GraphQLとの向き合い方2022年版
quramy
44
13k
VelocityConf: Rendering Performance Case Studies
addyosmani
327
24k
What's in a price? How to price your products and services
michaelherold
244
12k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
7
600
Rebuilding a faster, lazier Slack
samanthasiow
79
8.8k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
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
本日の講座はここまで お疲れ様でした