0
讓說我有一個表用戶具有以下字段:MySQL的連接使用情況
id
username
email
hobbies
我有另一個表稱爲愛好存儲有關每個愛好的具體信息:
name | unique
created
type
summary
現在通常會有人通過創建多對多關係和連接表來解決此問題,請將其稱爲user_hobby:
user_id
hobby_name
我嘗試做不同的是使用存儲愛好名的序列化陣列的用戶表下的愛好場。
因此,當我想要獲取用戶的愛好列表,而不是進行連接時,我會這樣做。
$array = $user->fetchHobbies()->toArray();
$hobbies = Hobbies::findByNames($array);
性能方面,哪個更好?
好吧,這是有道理的。我的教授向我提到,在大規模的應用程序中,關係數據庫結構將會崩潰。從那時起,我的團隊一直試圖設計一個模式,將這些實體放在一張表中。 – shiva8 2012-07-11 02:19:44
當處理大規模應用程序時,有很多選項,將數據序列化到一個字段不是其中的一個。但是,您應該考慮非規範化,集羣,高性能硬件和/或面向文檔的數據庫。 – Petah 2012-07-11 02:25:31