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
データベース:正規系の続き
Search
NearMeの技術発表資料です
PRO
April 28, 2023
Technology
0
66
データベース:正規系の続き
NearMeの技術発表資料です
PRO
April 28, 2023
Tweet
Share
More Decks by NearMeの技術発表資料です
See All by NearMeの技術発表資料です
ReactNative のアップグレード作業が (意外に)楽しかった話
nearme_tech
PRO
1
22
強化学習アルゴリズムPPOの改善案を考えてみた
nearme_tech
PRO
0
6
Apple Containerについて調べて触ってみた
nearme_tech
PRO
0
87
Rust 並列強化学習
nearme_tech
PRO
0
23
並列で⽣成AIにコーディングをやらせる
nearme_tech
PRO
1
140
希望休勤務を考慮したシフト作成
nearme_tech
PRO
0
39
Hub Labeling による高速経路探索
nearme_tech
PRO
0
94
Build an AI agent with Mastra
nearme_tech
PRO
0
78
Rustで強化学習アルゴリズムを実装する vol3
nearme_tech
PRO
0
44
Other Decks in Technology
See All in Technology
Figma + Storybook + PlaywrightのMCPを使ったフロントエンド開発
yug1224
10
3.6k
大「個人開発サービス」時代に僕たちはどう生きるか
sotarok
13
6.6k
ZOZOマッチのアーキテクチャと技術構成
zozotech
PRO
3
1.2k
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
30k
「魔法少女まどか☆マギカ Magia Exedra」での負荷試験の実践と学び
gree_tech
PRO
0
450
ヘブンバーンズレッドにおける、世界観を活かしたミニゲーム企画の作り方
gree_tech
PRO
0
430
Skrub: machine-learning with dataframes
gaelvaroquaux
0
110
RSCの時代にReactとフレームワークの境界を探る
uhyo
8
1.9k
進捗
ydah
2
230
エラーとアクセシビリティ
schktjm
0
350
「魔法少女まどか☆マギカ Magia Exedra」のグローバル展開を支える、開発チームと翻訳チームの「意識しない協創」を実現するローカライズシステム
gree_tech
PRO
0
440
DDD集約とサービスコンテキスト境界との関係性
pandayumi
2
230
Featured
See All Featured
Unsuck your backbone
ammeep
671
58k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
Imperfection Machines: The Place of Print at Facebook
scottboms
268
13k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.8k
Building Applications with DynamoDB
mza
96
6.6k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
Into the Great Unknown - MozCon
thekraken
40
2k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
Faster Mobile Websites
deanohume
309
31k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.5k
Transcript
0 データベース:正規形の続き 2023-04-28 第42回NearMe技術勉強会 Takuma Kakinoue
1 ボイスコッド正規形(第3.5正規形) このテーブルには、例えば以下の様な問題点がある。 • イーブイの進化先として、新しくニアブイを追加したい。しかし、ニアブイの進化に必要な石 はまだ未実装である。この場合、テーブルにイーブイとニアブイの関係を追加することがで きない。
以下のテーブルは第3正規形までは満たしている。
2 ボイスコッド正規形(第3.5正規形) {ポケモン名,使うアイテム} ➡ {進化先ポケモン名}という関係のほか、 {進化先ポケモン名} ➡ {(進化元)ポケモン名}という関係もあるので、 以下の様にテーブルを分解する。これでニアブイを追加できる!しかし。。。 (分解前) (分解後)
3 ボイスコッド正規形(第3.5正規形) よく見ると、イーブイに何の石を使ったらブースタに進化するのかという情報が 抜け落ちている... ボイスコッド正規化では、分割の仕方によっては、情報が失われる可能性があるので注意! (分解前)
(分解後)
4 ボイスコッド正規形(第3.5正規形) 以下の様に分解することで、情報が失われない! ブースターに進化するためには、イーブイにほのおの石を使えばよいとわかる!! (分解後) (分解前)
5 第4正規形 右のテーブルは、 {ポケモン名} →→ {特性} {ポケモン名} →→ {覚える技} という2つの関連を含んでいる!
ただ、ピカチュウの特性に仕様変更があった 場合に、複数行を更新しなくてはならない.. 以下の様に、1つのテーブルに含まれる関連は1つ になるようにする!! (分解前) (分解後)
6 参考文献 • ミック,達人に学ぶDB設計徹底指南書~初級者で終わりたくないあなたへ~, 株式会社 翔泳社,2012
7 Thank you