依個人理解,冗餘欄位就是本存在一張表的欄位,也出現在另一張表中。 例如:有三張表,用戶表、商品表、訂單表,用戶表中有欄位name,而訂單表中也存在欄位name。 對於這個欄位冗餘有好有壞 好: 從用戶表、商品表、訂單表說起,當我需要查詢“訂單表”所有數據並且只需要“用戶表”的name,一般都可以通過 ...
依個人理解,冗餘欄位就是本存在一張表的欄位,也出現在另一張表中。
例如:有三張表,用戶表、商品表、訂單表,用戶表中有欄位name,而訂單表中也存在欄位name。
對於這個欄位冗餘有好有壞
好:
從用戶表、商品表、訂單表說起,當我需要查詢“訂單表”所有數據並且只需要“用戶表”的name,一般都可以通過資料庫連接(join)查詢,
例如“商品表”存在欄位-->用戶的id,“訂單表”存在欄位-->商品的id,我可以查詢所有訂單,通過訂單中商品id查詢對應商品,然後對應查詢用戶name,
如果當表多起來時,例如1000張表(“有點誇大了,請諒解”),為了得個用戶表中的name,這查詢的速度就可想而知了。
這時給訂單表加個欄位name,則直接查詢該訂單就完成了需求,簡單明瞭。
不好:
同上,這時候對用戶name欄位增刪改,對應也要對訂單表中的欄位增刪改,這時還要去瞭解所有表中的冗餘欄位,以防有些表中的欄位沒對應修改。
針對這種情況,看需求,如果影響不大,利於開發效率,可適當的增加冗餘欄位。
註意:這是小白第一次寫博客,有些舉例有點不符合實際開發,望大牛們諒解。
版權聲明:本文為不會代碼的小白原創文章,未經允許不得轉載。