假设我有一个论坛。一个小型论坛,每天可能有100名访客。
最好的方法是通过创建列num_posts
来存储主题所拥有的帖子数量,并且每次用户在该主题中发帖时我只会将该数字增加一个。而另一种方式是当用户删除帖子时。或者只是进行查询?
SELECT COUNT(*)
FROM posts
WHERE topic_id = thetopicid
我更喜欢第二个。但是当然我猜它会影响性能。但是多少钱?这是不好的做法吗?
答案 0 :(得分:1)
使用count(*)
。拥有该额外列需要您自己维护,即更新新帖和已删除的帖子。你需要添加额外的东西才能做到这一点,这肯定需要额外的资源,而使用count(*)
你正在使用已经内置于DMBS的东西。