Re: [SQL ] 一個用戶多筆資料存一張表還是多張表較好
※ 引述《brianw ()》之銘言:
: 假設現在一個用戶有多筆資料:
: [id, 身高, 體重, 年紀]
: 但不是每欄都是必填
: 請問怎麼樣存取較好呢?
: 1.) 同一張表 沒填的就空白 舉例:
: id 身高 體重 年紀
: ----------------------
: 1 170 20
: 2 40
: 3 190 100
: 2.) 每種資料各存一張表 舉例:
: id 身高 id uid 體重 id uid 年紀
: --------- -------------- --------------
: 1 170 1 3 100 1 1 20
: 3 190 2 2 40
: 新手的理解
: 是不是第一種存取只要request一次? 但會有很多欄位是空白
: 第二種則要request三次 但不會有欄位是空白
: 請問資料多時哪種方式會比較好呢? 謝謝
看查詢使用量,比較清楚要用那種比較好,現在的資料庫都有查詢的使用量歷史資料。
通常會考慮兩種情況: 一、查詢(Select) 二、新增(Insert)
~查詢~
2查詢合併表格時比較慢,1因為不用合併表格,所以比較快
如果比較常個別查詢身高、或體重、或年紀,2比較好
因為既然不需要常常合併表格,那也不用先合併好
舉個例子:
超過50%的查詢,要一起看使用者的身高、體重年紀 - 選1
超過50%的查詢,只看身高,或只看體重,或只看年紀 - 選2
~新增~
雖然新增資料1比較快,不過怎麼看都不是像交易資料那樣高頻率新增,
所以不太需要考慮這點
一點想法,希望有合理
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.27.43.9
※ 文章網址: https://www.ptt.cc/bbs/Database/M.1439825179.A.40E.html
→
08/18 03:09, , 1F
08/18 03:09, 1F
推
08/19 10:05, , 2F
08/19 10:05, 2F
→
08/19 10:05, , 3F
08/19 10:05, 3F
→
08/19 10:06, , 4F
08/19 10:06, 4F
→
08/19 10:06, , 5F
08/19 10:06, 5F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):