类别
id | title | posts
----+----------+--------
1 | golf | 50
----+----------+-------
2 | soccer | 90
----+----------+-------
帖子
id | title | category_id
----+----------+--------------
1 | news 1 | 1
----+----------+--------------
2 | news 2 | 2
----+----------+--------------
3 | news 3 | 1
----+----------+--------------
SELECT c.id,
c.title,
count(p.id)
FROM `categories` c
INNER JOIN `posts` p ON c.id=p.category_id
GROUP BY c.id
但问题是当我在类别表中保持计数时,我必须更新类别表中的帖子字段.在小型项目中没有问题,但对于大型项目来说,处理数量的好方法是什么,因为我担心数据库性能
谢谢你的所有答案
解决方法:
我个人的偏好是不要在任何表格中保留重复数据,直到证明有必要为止.如果您反对编写JOIN查询,则可以定义包含查询的视图,然后您可以忘记它.
我在过去发现,正确的索引通常意味着没有太多的性能问题.
如果您发现有必要将计数摘要保留为类别表(出于性能或其他原因),请考虑在posts表上创建INSERT,UPDATE和DELETE触发器,以便可以由数据库完成更新,而不是依赖于应用程序程序员记住要做什么.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。