Mysql
RDBMS 儲存父親表中的孩子列表
如果我想找到 的所有孩子
"John"
,我需要執行SELECT * FROM Child where Father_Name = "John"
which 搜尋整個Child
表。有沒有辦法設計它,使
Father
表格包含子列表,以便我可以"John"
通過簡單地搜尋表格中的"John"
行來獲取所有子Father
節點?
您目前的設計是關係應該工作的方式。堅持下去。
你提出的是非規範化。它可以解決一些問題,但可能會導致更多問題。
如果你真的想這樣做,你必須決定如何保存一個可變大小的,可能是空的,子值數組。JSON 或 XML 可能是最不壞的選擇。
您確實需要
INDEX(father_name)
對該表進行有效使用,並避免表掃描。創建這樣的INDEX
不是自動的。