Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
雪かき部 #7 もう怖くない!SELECT文!
Search
numa
September 29, 2026
Technology
290
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
雪かき部 #7 もう怖くない!SELECT文!
雪かき部 #7 で使った講義資料です
https://yukikaki.connpass.com/event/406317/
numa
September 29, 2026
More Decks by numa
See All by numa
SnowflakeCoCoでデータエンジニアリング!
foursue
0
290
はじめてでもわかる入門データエンジニア
foursue
0
66
MLLoop〜Opsてない夜が気に入らないよ〜
foursue
0
400
20250924_LT2本やる.pdf
foursue
0
1.5k
DataEngineeringとCloudNativeの今と未来
foursue
1
900
データウェアハウス製品のSnowflakeでPythonが動くって知ってました?
foursue
1
510
よく聞くけど使ったことないソフトウェアNo.1 KafkaとSnowflake
foursue
4
920
日本におけるデータエンジニアリングのこれまでとこれから
foursue
20
6.6k
技育祭2023春 ちゅらデータ講演資料
foursue
1
2.1k
Other Decks in Technology
See All in Technology
V8のArray.prototype.flatを最大約20倍速くするまでと、巨大OSSへの大規模コミットの道のり
riyaamemiya
0
260
Jetson Orin Nanoとk3sとローカルLLMで音声文字起こしシステム作ってみた
y_sera15
0
120
AIに攻撃される前に、AIに攻撃させる
tsuchikazu
0
170
全人類(ほぼ)AWS Organizations の上でAWSを利用している、その世界を知る話
htan
1
130
味覇で作るパスタが美味い - 20261001_yabaubuki.dev
livesense
PRO
0
120
分析の民主化を支えるメタデータ整備の実践
kakehashi
PRO
4
1.3k
生成AIと進める探索的データ分析(2026.10.03 第122回Tokyo.R勉強会)
tatamiya
2
1.5k
3つのアプローチで目指す チームを強くするAI駆動開発
thkt
0
160
実践!Cloud Run ハンズオン!! / Cloud Run handson
y0hgi
0
210
Execution in the Kingdom of Agents: Reflections on Abstraction and Complexity
bcantrill
0
940
宣言型部分更新は何を解決しどこへ向かうのか
shuta13
1
310
AI駆動開発の時代になったのでトヨタ生産方式から見直す
terurou
7
5.8k
Featured
See All Featured
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
3.3k
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
920
The Curse of the Amulet
leimatthew05
3
15k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
GraphQLとの向き合い方2022年版
quramy
50
15k
Ten Tips & Tricks for a 🌱 transition
stuffmc
1
260
Deep Space Network (abreviated)
tonyrice
0
360
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
[Rails World 2026] Durable orchestration on Rails: from continuation to workflow
palkan
1
710
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
360
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
700
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.8k
Transcript
雪かき部 #7 もう怖くない!SELECT文! 2026-09-28 ちゅらデータ CTO 菱沼 雄太 © 2026
Chura DATA inc.
AGENDA • 基礎概念 • SELECT文のすべて • レベルアップ!JOIN! • レベルアップ!WITH! •
まとめ © 2026 Chura DATA inc.
自己紹介 • 名前:菱沼雄太 • 会社:ちゅらデータ • 役職:CTO • 仕事:データエンジニア •
経歴:元SnowVillage村長、元DataSuperhero、現Snowflake Partner Champion • 簡単に言うと:Snowflakeは良いと言い続けている人 • ※割と文句も言い続けてるけど、すぐ中の人が直してくれるので、助かってる • 最近の不満:オントロジーがプア過ぎて概念レベルの問い合わせに対応しずらくて辛い • よくも悪くも決定論的な振る舞いに強いのがSnowflakeだなと思っている=好き © 2026 Chura DATA inc.
今日はSQLなんて 普段書かない・初めて知る・初めて読む人たちに 向けてSELECT文の雰囲気を 学んでもらいます 今日の30分を聞けば雰囲気だけでSELECT文が 読めるようになる! © 2026 Chura DATA
inc.
実は 1970年代に生まれた SQL 雰囲気読めるようになれば、 きっとこの後も50年くらい役に立つはず © 2026 Chura DATA inc.
まずは基礎概念編 © 2026 Chura DATA inc.
テーブル・行・列 © 2026 Chura DATA inc.
テーブル・行・列 普段使ってるExcelに当てはめるとこうなっている テーブル(表) カラム(列) レコード(⾏) © 2026 Chura DATA inc.
次は早速 © 2026 Chura DATA inc.
SELECT文 © 2026 Chura DATA inc.
SELECT文のすべて とりあえず4つ覚えるだけで雰囲気読めるようになります! 1.SELECT 2.FROM 3.WHERE 4.GROUP BY 欲しい列を書く どのテーブルから欲しいのか書く どんな条件で抜き出したいのか書く
どの列で集計する © 2026 Chura DATA inc.
いくぞ! 読んでみよう! © 2026 Chura DATA inc.
SELECT文のすべて 1. SELECT 欲しい列を書く 2. FROM どのテーブルからデータが欲しいのか書く 3. WHERE どんな条件で抜き出したいのか書く
4. GROUP BY どの列で集計する このSELECT文を 読み解いてみよう! © 2026 Chura DATA inc.
SELECT文のすべて 1. SELECT 欲しい列を書く 2. FROM どのテーブルからデータが欲しいのか書く 3. WHERE どんな条件で抜き出したいのか書く
4. GROUP BY どの列で集計する SELECT句は… *列がほしいんだな © 2026 Chura DATA inc.
SELECT文のすべて 1. SELECT 欲しい列を書く 2. FROM どのテーブルからデータが欲しいのか書く 3. WHERE どんな条件で抜き出したいのか書く
4. GROUP BY どの列で集計する *はすべての列を示す 特殊ワード!! よくでてくるので覚えよう SELECT句は… *列がほしいんだな © 2026 Chura DATA inc.
SELECT文のすべて 1. SELECT 欲しい列を書く 2. FROM どのテーブルからデータが欲しいのか書く 3. WHERE どんな条件で抜き出したいのか書く
4. GROUP BY どの列で集計する FROM句は… COUNTRYテーブル からほしいんだな © 2026 Chura DATA inc.
SELECT文のすべて 1. SELECT 欲しい列を書く 2. FROM どのテーブルからデータが欲しいのか書く 3. WHERE どんな条件で抜き出したいのか書く
4. GROUP BY どの列で集計する 実行! © 2026 Chura DATA inc. COUNTRY テーブル から全列・全レコードが 取れた
どうですか? SELECT文、読めそうですね? © 2026 Chura DATA inc.
© 2026 Chura DATA inc.
次に行きます! © 2026 Chura DATA inc.
SELECT文のすべて 1. SELECT 欲しい列を書く 2. FROM どのテーブルからデータが欲しいのか書く 3. WHERE どんな条件で抜き出したいのか書く
4. GROUP BY どの列で集計する SELECT句は… COUNTRY列と CITY列が欲しいんだな! © 2026 Chura DATA inc.
SELECT文のすべて 1. SELECT 欲しい列を書く 2. FROM どのテーブルからデータが欲しいのか書く 3. WHERE どんな条件で抜き出したいのか書く
4. GROUP BY どの列で集計する FROM句は COUNTRY テーブルから ほしいんだな © 2026 Chura DATA inc.
SELECT文のすべて 1. SELECT 欲しい列を書く 2. FROM どのテーブルからデータが欲しいのか書く 3. WHERE どんな条件で抜き出したいのか書く
4. GROUP BY どの列で集計する WHERE句は COUNTRYが「Canada」 のデータが欲しいんだな © 2026 Chura DATA inc.
SELECT文のすべて 1. SELECT 欲しい列を書く 2. FROM どのテーブルからデータが欲しいのか書く 3. WHERE どんな条件で抜き出したいのか書く
4. GROUP BY どの列で集計する CanadaのCITYが 取れたぞ! 実行! © 2026 Chura DATA inc.
WHEREも読めそうですね! © 2026 Chura DATA inc.
© 2026 Chura DATA inc.
次に行きます! © 2026 Chura DATA inc.
SELECT文のすべて 1. SELECT 欲しい列を書く 2. FROM どのテーブルからデータが欲しいのか書く 3. WHERE どんな条件で抜き出したいのか書く
4. GROUP BY どの列で集計する © 2026 Chura DATA inc.
SELECT文のすべて 1. SELECT 欲しい列を書く 2. FROM どのテーブルからデータが欲しいのか書く 3. WHERE どんな条件で抜き出したいのか書く
4. GROUP BY どの列で集計する SELECT句は… COUNTRY̲ID列と COUNTRY列と count(*)が欲しいんだな! © 2026 Chura DATA inc.
SELECT文のすべて 1. SELECT 欲しい列を書く 2. FROM どのテーブルからデータが欲しいのか書く 3. WHERE どんな条件で抜き出したいのか書く
4. GROUP BY どの列で集計する count(*)はGROUP BYと 同時に使うことで、 何個あるか 集計してくれます SELECT句は… COUNTRY̲ID列と COUNTRY列と count(*)が欲しいんだな! © 2026 Chura DATA inc.
SELECT文のすべて 1. SELECT 欲しい列を書く 2. FROM どのテーブルからデータが欲しいのか書く 3. WHERE どんな条件で抜き出したいのか書く
4. GROUP BY どの列で集計する FROM句は… COUNTRYテーブルから 取り出したいんだな! © 2026 Chura DATA inc.
SELECT文のすべて 1. SELECT 欲しい列を書く 2. FROM どのテーブルからデータが欲しいのか書く 3. WHERE どんな条件で抜き出したいのか書く
4. GROUP BY どの列で集計する GROUP BY句は… COUNTRY̲ID列とCOUNTRY列 で集計したいんだな © 2026 Chura DATA inc.
SELECT文のすべて 1. SELECT 欲しい列を書く 2. FROM どのテーブルからデータが欲しいのか書く 3. WHERE どんな条件で抜き出したいのか書く
4. GROUP BY どの列で集計する GROUP BY句は… SELECT句と内容がほぼ同じなの で、「all」キーワードに置き換え ることも出来ます GROUP BY句は… COUNTRY̲ID列とCOUNTRY列 で集計したいんだな © 2026 Chura DATA inc.
SELECT文のすべて 1. SELECT 欲しい列を書く 2. FROM どのテーブルからデータが欲しいのか書く 3. WHERE どんな条件で抜き出したいのか書く
4. GROUP BY どの列で集計する 実行! © 2026 Chura DATA inc.
GROUP BYも読めそうですね! © 2026 Chura DATA inc.
© 2026 Chura DATA inc.
ここまでくれば雰囲気でかなり読める © 2026 Chura DATA inc.
レベルを上げよう! © 2026 Chura DATA inc.
次はJOIN(じょいん・結合) © 2026 Chura DATA inc.
JOIN(じょいん・結合)の概要 2つのテーブルを横にくっつけるのがJOIN JOINのイメージ JOINを使ったSQLの例 A テーブル JOIN A テーブル B
テーブル B テーブル ここにJOIN © 2026 Chura DATA inc.
JOINのしくみ JOINするときはくっつける列(キーと呼ぶ)を指定すると キーの値が同じレコードが横にくっつく LOCATIONテーブル CITYを使ってJOINした結果 CITYをキー に指定 COUNTRYテーブル 元LOCATION ©
2026 Chura DATA inc. 元COUNTRY
JOINの書き方 JOINはFROMに書く、「JOIN テーブル名」と書く 続けて、「ON」でキーを指定する テーブル名が長くなるので、別名をつけると読み書きしやすい FROMに書く JOIN テーブル名 © 2026
Chura DATA inc.
JOINの書き方 JOINはFROMに書く、「JOIN テーブル名」と書く 続けて、「ON」でキーを指定する テーブル名が長くなるので、別名をつけると読み書きしやすい テーブルのあとにスペース 入れて別名を書ける ONにキーを指定 © 2026
Chura DATA inc. 別名.列名が使える
JOIN付きSELECT文を実行するとこんな感じ 実行! © 2026 Chura DATA inc.
JOINも雰囲気で読めそうですね! © 2026 Chura DATA inc.
LOCATIONテーブルとCOUNTRY テーブ ルを横にくっつけたいってことだ © 2026 Chura DATA inc.
なんと、みなさんは すでに世の中のほとんどのSELECT文を 雰囲気で読めるようになりました © 2026 Chura DATA inc.
最後! © 2026 Chura DATA inc.
さらにレベルアップ! © 2026 Chura DATA inc.
SELECT文を繋げられる WITH句 © 2026 Chura DATA inc.
WITH句の概要 SELECT文を複数繋げられるのがWITH句 (WITH句の別名:共通テーブル式、 Common Table Expression、CTE) WITH句のイメージ WITH句を使ったSQLの例 SELECT文① SELECT文①
SELECT文② 上の結果を下で 使ってSELCT文を 続けて書ける SELECT文② SELECT文③ © 2026 Chura DATA inc.
WITH句の書き方 「WITH 共通テーブル名 AS( SELECT文 )」と書く 次のSELECT文のなかで「共通テーブル名」を使える 上でWITHとおもむ ろに書く 下のSELECT文で共通
テーブル名を使える © 2026 Chura DATA inc.
WITH句があっても雰囲気で読もう (雰囲気で読むと) COUNTRYのテーブルから、 United Statesのレコードが 「A」に入ってそう © 2026 Chura DATA
inc.
WITH句があっても雰囲気で読もう (雰囲気で読むと) AとLOCATIONテーブルを横 でつなげて、CITYごとのレ コードの件数を求めていそう © 2026 Chura DATA inc.
WITH句付きのSELECT文を実行するとこんな感じ 実行! © 2026 Chura DATA inc.
WITH句は 雰囲気で読めるSELECT文を つなげてるだけなので よく見ると雰囲気で読めそうですね! © 2026 Chura DATA inc.
United StatesのCITYごとにLOCATIONの レコード数を求めてそう © 2026 Chura DATA inc.
今日はここまでです © 2026 Chura DATA inc.
おめでとうございます! パチパチパチパチ © 2026 Chura DATA inc.
ここまでくれば本当に雰囲気で いろんなSELECT文を読めるようになったはずです © 2026 Chura DATA inc.
おめでとうございます! パチパチパチパチ(2回目) © 2026 Chura DATA inc.
最近はCoCoなどAIを使うと SELECT文をだいたい作ってくれます でも、作られたSELECT文がよくわからないと 困ることも多い… © 2026 Chura DATA inc.
今日得た知識を使って 少しでもSELECT文を 雰囲気読めるようになって CoCoの出力したSELECT文に注文を つけれるようになりましょう! 「ここも見たい!」 「ここも追加して!」 「ここが間違っている気がする!」 © 2026
Chura DATA inc.
まとめ • SELECT文を雰囲気読むための4つ • SELECT、FROM、WHERE、GROUP BY • 横にテーブルをつなげるJOIN • SELECT文を続けて書けるWITH
• もっと詳しく理解したい人はSQLの入門本を買って勉強してみるのがおすすめだよ © 2026 Chura DATA inc.