使sql字段始终等于从另一个表计数

时间:2014-03-24 19:10:59

标签: mysql

我应该怎么做才能使mysql中的某个字段始终等于另一个表中某些字段的Count,这样如果该表被更改,那么该字段也会相应地执行?例如:

UPDATE table SET this=COUNT(*) ... WHERE ...

如果以上 7 但我在表格中插入了一行,我希望它自动更新为 8

1 个答案:

答案 0 :(得分:0)

你可以用2种方式做到(据我所知)。

  1. 您可以制作一个view,其中包含数据,包括计数。
  2. 您可以在创建行,更新行和删除行时使trigger执行某些操作。这样,每次更改发生到该值时,您都必须执行COUNT
  3. viewtrigger慢,因为每次要使用view时,都会执行view后面的查询。 view更容易实现,并且需要更少的维护。根据您需要计算的field可以改变的方式,它可能会变得更加复杂。