在创建通知系统时,我遇到了一个问题。系统创建的社区相当大,我对SQL表有两个想法:
制作一张包含以下内容的表格:
id(AUTO_INCREMENT) | comment(text) | viewers_id(int) | date(datetime)
在此选项中,评论与日期一起存储,所有查看评论的用户都以","分隔。例如:
1| Hi I'm a penguin|1,2,3,4|24.06.1879
系统现在应该使用列viewers_id
来决定是否应该显示通知。
制作两个表格,如:
id(AUTO_INCREMENT) | comment(text) | date(datetime)
id(AUTO_INCREMENT) | comment_id | viewers_id(int)
示例:
5|I'm a rock|23.08.1778
1|5|1,2,3,4
在此示例中,我们再次检查viewers_id
。
其中哪些可能会有更好的表现?
答案 0 :(得分:0)
在我看来,您不应该过分关注优化表格,因为首先优化您的应用程序会更有价值。
现在问你的问题:
提高SQL表的性能可以通过两种方式实现:
1.为每个SQL表标准化我建议你将其标准化:
Wikipedia - normalization 2.您可以减少并发性,这意味着减少因数据变更而无法访问数据的次数。
至于你的例子:如果我必须选择其中一个我会选择第二个选项。