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
第1回 SQL勉強会 (社外公開用)
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Saiid Al-Halawi
December 06, 2021
Technology
550
0
Share
第1回 SQL勉強会 (社外公開用)
社内向けに行ったSQL勉強会の資料を社外公開用に一部加工して掲載したものになります。
Saiid Al-Halawi
December 06, 2021
More Decks by Saiid Al-Halawi
See All by Saiid Al-Halawi
第2回 SQL勉強会 (社外公開用)
saiidalhalawi
0
240
RSpec、あなたならどう書く?
saiidalhalawi
1
1.6k
Other Decks in Technology
See All in Technology
こんなアーキテクチャ図はいやだ / Anti-pattern in AWS Architecture Diagrams
naospon
1
280
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
4.2k
ストライクウィッチーズ2期6話のエイラの行動が許せないのでPjMの観点から何をすべきだったのかを考える
ichimichi
1
360
Master Dataグループ紹介資料
sansan33
PRO
1
4.6k
"SQLは書けません"から始まる データドリブン
kubell_hr
2
400
Introduction to Sansan, inc / Sansan Global Development Center, Inc.
sansan33
PRO
0
3k
Introduction to Bill One Development Engineer
sansan33
PRO
0
410
シン・リスコフの置換原則 〜現代風に考えるSOLIDの原則〜
jinwatanabe
0
200
CloudSec JP #005 後締め ~ソフトウェアサプライチェーン攻撃から開発者のシークレットを守る~
lhazy
0
180
Digitization部 紹介資料
sansan33
PRO
1
7.2k
2026年度新卒技術研修 サイバーエージェントのデータベース 活用事例とパフォーマンス調査入門
cyberagentdevelopers
PRO
7
8.3k
みんなの「データ活用」を支えるストレージ担当から持ち込むAWS活用/コミュニティー設計TIPS 10選~「作れる」より、「続けられる」設計へ~
yoshiki0705
0
140
Featured
See All Featured
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
190
Marketing to machines
jonoalderson
1
5.1k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.3k
SEO for Brand Visibility & Recognition
aleyda
0
4.5k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.4k
GitHub's CSS Performance
jonrohan
1032
470k
The Curse of the Amulet
leimatthew05
1
11k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.2k
Transcript
©2021 crassone 第1回 SQL勉強会 2021/11/01
1 0. はじめに
2 この会の趣旨 エンジニア / 非エンジニアを問わず、データのさらなる利活 用によって業務の幅を広げていくことを目的に知識ゼロから SQLを少しずつ学んでいこうというイベントです。 たぶん全4回くらい実施できると一通りのことができるように なりそう。
3 今日のゴール 1. SQLとはなにか、なんとなく理解できるようになる 2. そもそもデータベースって何なのかざっくり分かる 3. SQLのごく簡単な編集を行えるようになる
4 1. SQLってなんですか?
5 SQLとは ... データの操作や定義を行うための データベース言語(問い合わせ言語) https://ja.wikipedia.org/wiki/SQL
6 ちなみに ... 問い合わせ言語 ≠ プログラミング言語
7 2. じゃあデータベースってなんですか?
8 データベースとは ... 構造化・整理された 情報の集まり
9 つまりSQLとは ... 「整理された情報の集まり」に 任意の問い合わせを行う手段
10 3. SQLってどんなことができるんですか?
11 ざっくりSQLにできること データの「箱」をつくって 中身の出し入れができる
12 SQLの大まかな種類 • データ定義言語 (DDL) • データ操作言語 (DML) • データ制御言語
(DCL)
13 SQLの大まかな種類 • データ定義言語 (DDL) • データ操作言語 (DML) • データ制御言語
(DCL) 取り扱うのはこれだけ
14 データ操作言語の種類 • INSERT (テーブルへの挿入) • UPDATE (テーブルへの更新) • DELETE
(テーブルからの削除) • SELECT (データの読取)
15 データ操作言語の種類 • INSERT (テーブルへの挿入) • UPDATE (テーブルへの更新) • DELETE
(テーブルからの削除) • SELECT (データの読取) 今日これだけ覚えれば OK
16 4. テーブルってなんなんですか?
17 ざっくりSQLにできること データの箱をつくって 中身の出し入れができる これがテーブル
18 データベースの構成要素 テーブル 特定種類のデータを実際に格納する「箱」。 ex.) ユーザーテーブル, 商品テーブル ...etc カラム 格納データの個別の属性を決定づける「列」
。ex.) ユーザー名, ログインメールアドレス、定価 ...etc レコード テーブルへ格納する最小単位のデータ。「行」。ex.) 1人のユーザー, 商品A ...etc フィールド レコードを構成する単一の列データ 。ex.) ユーザーAのメールアドレス, 商品Aの定価 ...etc
19 Spread Sheetで例えると ...
20 Spread Sheetで例えると ... レコード カラム フィールド テーブル
21 Spread Sheetで例えると ... テーブルの集まりがデータベースです。 SpreadSheetで言うとシートの集まりで、 つまり「ブック」に相当します。
22 5. SELECT文の基礎
23 SELECT文の基本的な構造 SELECT [取り出したいフィールド] FROM [対象のテーブル名] WHERE [取り出す条件] ORDER BY
[取り出す順番] LIMIT [取り出す最大件数]
24 ※ これから紹介するクエリ例はあくまで学習用に設定 された架空のものです。 ※ 実際に各サービスがどのようにデータを取り扱って いるかについて、通常外部からは知ることができませ ん。 ここで注意
25 SELECT文の例1. ex.1) esa内の議事録記事一覧
26 SELECT文の例1. 「記事の中から”/議事録/”以下のものを更新が新しい順に 20件欲しい」 という要求を表したものが上記のクエリです。 SELECT 記事番号, 記事タイトル, 書いた人, 更新日時
starした人, watchした人, コメントした人 FROM 記事 WHERE 記事タイトル LIKE ‘/議事録/%’ ORDER BY 更新日時 新しい順 LIMIT 20
27 SELECT文の例2. ex.2) Wantedlyの求人詳細ページ
28 SELECT文の例2. 「求人の中からIDが480115に合致するものが1件だけ欲しい」 という要求を表したものが上記のクエリです。 (求人IDは各レコードに固有の番号として付加された識別子 ) SELECT 求人ID, 求人タイトル, 求人内容,
会社名, 公開日時, エントリー数, PV数 ... FROM 求人 WHERE 求人ID = 480115
29 6. metabaseでSELECT文を触ってみる
30 データの見方 on metabase データの見方 on metabase 実際にどんな性質のデータが用意されてるか、こ こからレファレンスできます
31 ここからワークショップ じゃあ実際にいじってみましょう (時間の許す限り)
32 7. おわりに
33 今日のゴール 1. SQLとはなにか、なんとなく理解できるようになる 2. そもそもデータベースって何なのかざっくり分かる 3. SQLのごく簡単な編集を行えるようになる どうだったでしょうか?
34 次回予告 1. 表結合の基本 2. 集計関数の使い方