我想制作一个表格,以反映用户在我的应用程序中的行为。什么表结构会给出更快的sql查询结果
我记得两个解决方案,我想知道什么会更快?
1)
ID | source_user_id | target_user_id | action_type
在此选项中,我将创建一个行每个动作
2)
Id | source_user_id | target_user_id | action_x | action_y | action_z
在此选项中,我将创建适用于所有行动的行其他用户, 未执行操作时,该字段将设置为NULL值 仅当至少执行一个操作时才会创建此行Rmed指
u能也帮助我理解为什么最好的选择将是
原谅我的英语不好。
谢谢
的主要问题是,你不知道如何去衡量这一点。我不知道mysql,但我可以想象使用性能测试的方法。一个可能的和简单的解决方案将是要求谷歌。然而,从我的角度来看:#2更快,因为它避免了“JOIN”。但是,就我所记得的来说,设计表格结构是一种非常愚蠢的方式,因为它违反了3ND。 – alzaimar 2013-03-27 23:18:52
主要问题是牺牲性能的正确性。速度杀死。对速度的需求甚至更多。 – wildplasser 2013-03-27 23:23:48