mysql - 有一个列等于另一个表的计数吗?

标签 mysql

有没有办法让一列等于不同表中所有行的计数,其中 id = 当前行中的一列?

例如。

  • table1 有列:id,count
  • table2 有列 id,table1_id

我希望 table1.count 自动填充 table2 中的行数,其中 table2.table1_id = table1.id

(它的父子关系只有一个)。

显然,我可以使用 php 来完成此操作,我只是认为这比每次加载页面时都必须不断地使用 php 重新计算要快。谢谢。

最佳答案

您可以使用 view 来完成此操作.不过,它可能每次都会重新计算数字。

要在每次更改常规表时更新常规表,请使用 trigger .

如果表很少更改,请不要太担心重新计算,因为结果通常会在查询缓存中。

关于mysql - 有一个列等于另一个表的计数吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11402210/

相关文章:

mysql - 我可以强制 Yii 在生成的 SQL 中使用特定的别名吗

mysql - 如何基于多个唯一列选择数据,而不对结果集中的其余列应用聚合函数

mysql - Web 服务连接 mysql 失败

mysql - 在 MySQL 中声明具有多个 JOIN 表的变量

mysql - 解析电子邮件数据的 API

MySQL 选择表是否存在

php - INNER JOIN SQL/PHP - 需要单行且列上有数组

php - 将日文字符保存到 MySQL 中

MySQL 高效存储无向图边

MySQL - 按父级查找子类属性的最有效方法?