我是否需要为 mysql 上的 table 行增量设置外键
Do I need to set a foreign key for table row increments on mysql
这个标题错了,我想不出更好的句子。
我正在创建一个 PHP/MySQL 基础论坛,我想在其中显示特定论坛中有多少主题。到目前为止一切顺利,我的问题是:每次在论坛下添加新主题时,如何使主题计数行增加,而在删除主题时减少。
我可以在脚本中做到这一点,但也许有更好的方法从数据库中做到这一点?
感谢期待:)
您可以使用 COUNT
聚合和 GROUP BY
在单个查询中轻松地包含一对多关系的计数。例如
SELECT f.id, f.name, COUNT(t.id) as topicCount
FROM forum f
LEFT JOIN topic t
ON f.id = topic.forumId
GROUP BY f.id, f.name
这个标题错了,我想不出更好的句子。
我正在创建一个 PHP/MySQL 基础论坛,我想在其中显示特定论坛中有多少主题。到目前为止一切顺利,我的问题是:每次在论坛下添加新主题时,如何使主题计数行增加,而在删除主题时减少。
我可以在脚本中做到这一点,但也许有更好的方法从数据库中做到这一点?
感谢期待:)
您可以使用 COUNT
聚合和 GROUP BY
在单个查询中轻松地包含一对多关系的计数。例如
SELECT f.id, f.name, COUNT(t.id) as topicCount
FROM forum f
LEFT JOIN topic t
ON f.id = topic.forumId
GROUP BY f.id, f.name