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
DBのキホン
Search
Moriyama Hiroaki
January 27, 2023
Technology
1
33
DBのキホン
社内の事務職(非エンジニア)の方向けの勉強会の資料。
Moriyama Hiroaki
January 27, 2023
Tweet
Share
More Decks by Moriyama Hiroaki
See All by Moriyama Hiroaki
ITリテラシー教育
moriyamahiroaki
1
120
他職種や経営層とエンジニアを「うまくつなぐ」ためにエンジニアができること
moriyamahiroaki
2
130
障害対応のキホン
moriyamahiroaki
7
210
急拡大するエンジニア組織で複数PJを進めるカオスな状況を乗り切るチームビルディング
moriyamahiroaki
3
120
Other Decks in Technology
See All in Technology
ESXi で仮想化した ARM 環境で LLM を動作させてみるぞ
unnowataru
0
180
データエンジニアリング領域におけるDuckDBのユースケース
chanyou0311
9
2.2k
4th place solution Eedi - Mining Misconceptions in Mathematics
rist
0
140
Cracking the Coding Interview 6th Edition
gdplabs
14
28k
What's new in Go 1.24?
ciarana
1
110
Change Managerを活用して本番環境へのセキュアなGUIアクセスを統制する / Control Secure GUI Access to the Production Environment with Change Manager
yuj1osm
0
100
Goで作って学ぶWebSocket
ryuichi1208
3
2.8k
Ruby on Railsで持続可能な開発を行うために取り組んでいること
am1157154
3
150
データベースの負荷を紐解く/untangle-the-database-load
emiki
2
510
Охота на косуль у древних
ashapiro
0
100
IoTシステム開発の複雑さを低減するための統合的アーキテクチャ
kentaro
1
110
Autonomous Database Serverless 技術詳細 / adb-s_technical_detail_jp
oracle4engineer
PRO
17
45k
Featured
See All Featured
Bash Introduction
62gerente
611
210k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
Done Done
chrislema
182
16k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Large-scale JavaScript Application Architecture
addyosmani
511
110k
Building Applications with DynamoDB
mza
93
6.2k
Fontdeck: Realign not Redesign
paulrobertlloyd
83
5.4k
Site-Speed That Sticks
csswizardry
4
410
Embracing the Ebb and Flow
colly
84
4.6k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
49
2.3k
YesSQL, Process and Tooling at Scale
rocio
172
14k
How to Ace a Technical Interview
jacobian
276
23k
Transcript
DBのキホン 2023/01/27 Moriyama Hiroaki
• DB(データベース)って何? • SQLって何? • SELECT文って何? アジェンダ
DB (データベース) って何?
複数のデータを、使い回しのしやすいように整理し、共通の項目を一括に 蓄積しているものを指します。 ※紙で出来ている「タウンページ」や、学生時代の「とも帳」なども 立派なデータベースと言えます。 DB(データベース)とは
DBの中でも、一般的なWebサービスで多用されるのが、 リレーショナルデータベース(RDBやRDBMSと表現)です。 RDBは、テーブル・列(カラム)・行(ロウ)で構成されています。 DB(リレーショナルデータベース)とは
DB(リレーショナルデータベース)とは • テーブル ◦ データの単位(データの塊全体:従業員テーブルの事) • 列 ◦ テーブル内の項目(データの縦方向:従業員番号・氏・名などの事) •
行 ◦ テーブル内のデータ(データの横方向:半沢さん・大和田常務のこと)
SQLって何?
SQLって何? 一般的なシステムで使っているDB(正確にはリレーショナルデータベース)に対して、問 い合わせ(データの取得)や、変更(追加・削除・更新)を行う際に使うプログラミング言語 の一種です。 ※「SQLはプログラミング言語ではない!」という思想を持つ派閥も世の中には多くいま すw まぁ、ここではあまり深く考えずに・・・www
SELECT文って何?
SELECT文って何? データベースから情報を取得する際に使う、SQLの書き方の一つです。 SELECT文は、いくつかのパートに分けられています。
SELECT文って何? • SELECT句 ◦ 何の情報(項目)が見たいか?を書く • FROM句 ◦ どこにある情報を見たいか?を書く •
JOIN句 ◦ どこにある情報を見たいか?を書く ※ FROM句の場所だけではデータが足りない場合に必要 • WHERE句 ◦ どのような条件で絞り込んで情報を見たいか?を書く • ORDER BY句 ◦ どのような順番で並び替えて情報を見たいか?を書く ※実際は、他にもありますが、よく使うものだけ記載しました。
SQLサンプル
前提
SELECT 従業員テーブル.従業員番号, 部署テーブル.部署名, 従業員テーブル.氏, 従業員テーブル.名 FROM 従業員テーブル LEFT JOIN 部署テーブル
ON 部署テーブル.部署コード = 従業員テーブル.所属部署コード WHERE 部署テーブル.部署名 = "NJSS事業本部" ORDER BY 従業員テーブル.従業員番号 ASC ; 取得したいデータと参考SQL NJSS事業本部に所属している従業員の、従業員番号・部署名・氏・名がほしい 並び順は、従業員番号の小→大がよい
おわり