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の技術発表資料です
今だからこそ入門する Server-Sent Events (SSE)
nearme_tech
PRO
3
250
ReactNative のアップグレード作業が (意外に)楽しかった話
nearme_tech
PRO
2
80
強化学習アルゴリズムPPOの改善案を考えてみた
nearme_tech
PRO
0
8
Apple Containerについて調べて触ってみた
nearme_tech
PRO
0
140
Rust 並列強化学習
nearme_tech
PRO
0
24
並列で⽣成AIにコーディングをやらせる
nearme_tech
PRO
1
150
希望休勤務を考慮したシフト作成
nearme_tech
PRO
0
40
Hub Labeling による高速経路探索
nearme_tech
PRO
0
100
Build an AI agent with Mastra
nearme_tech
PRO
0
84
Other Decks in Technology
See All in Technology
Create Ruby native extension gem with Go
sue445
0
130
共有と分離 - Compose Multiplatform "本番導入" の設計指針
error96num
2
1.1k
バイブスに「型」を!Kent Beckに学ぶ、AI時代のテスト駆動開発
amixedcolor
2
580
複数サービスを支えるマルチテナント型Batch MLプラットフォーム
lycorptech_jp
PRO
1
910
使いやすいプラットフォームの作り方 ー LINEヤフーのKubernetes基盤に学ぶ理論と実践
lycorptech_jp
PRO
0
120
テストを軸にした生き残り術
kworkdev
PRO
0
210
2つのフロントエンドと状態管理
mixi_engineers
PRO
3
120
Android Audio: Beyond Winning On It
atsushieno
0
2.4k
データ分析エージェント Socrates の育て方
na0
6
2.2k
スクラムガイドに載っていないスクラムのはじめかた - チームでスクラムをはじめるときに知っておきたい勘所を集めてみました! - / How to start Scrum that is not written in the Scrum Guide 2nd
takaking22
1
160
これでもう迷わない!Jetpack Composeの書き方実践ガイド
zozotech
PRO
0
1.1k
まずはマネコンでちゃちゃっと作ってから、それをCDKにしてみよか。
yamada_r
2
120
Featured
See All Featured
The Power of CSS Pseudo Elements
geoffreycrofte
77
6k
Site-Speed That Sticks
csswizardry
10
820
Bash Introduction
62gerente
615
210k
Being A Developer After 40
akosma
90
590k
4 Signs Your Business is Dying
shpigford
184
22k
Speed Design
sergeychernyshev
32
1.1k
Building Adaptive Systems
keathley
43
2.7k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Rails Girls Zürich Keynote
gr2m
95
14k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
850
Making Projects Easy
brettharned
117
6.4k
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