依個人瞭解,冗餘字段就是本存在一張表的字段,也出現在另一張表中。
相關mysql影片教學推薦:《mysql教學》
例如:有三張表,使用者表、商品表、訂單表,使用者表中有欄位name,而訂單表中也存在欄位name。
對於這個欄位冗餘有好有壞
好:
從用戶表、商品表、訂單表說起,當我需要查詢「訂單表」所有資料且只需要「使用者表」的name,一般都可以透過資料庫連接(join)查詢,
例如「商品表」存在欄位-->使用者的id,“訂單表」存在欄位-->商品的id,我可以查詢所有訂單,透過訂單中商品id查詢對應商品,然後對應查詢使用者name,
如果當表多起來時,例如1000張表(「有點誇大了,請諒解」),為了得個用戶表中的name,這查詢的速度就可想而知了。
這時為訂單表加個欄位name,則直接查詢該訂單就完成了需求,簡單明了。
不好:
同上,這時候對使用者name欄位增刪改,對應也要對訂單表中的欄位增刪改,這時還要去了解所有表格中的冗餘字段,以防有些表中的字段沒對應修改。
針對這種情況,看需求,如果影響不大,利於開發效率,可適當的增加冗餘欄位。
以上是關於資料庫冗餘欄位及適當性的理解的詳細內容。更多資訊請關注PHP中文網其他相關文章!