使用vs select查询的mysql触发器

使用vs select查询的mysql触发器,mysql,Mysql,我使用mysql触发器更新一个名为comments\u count的y DB表中的列,但我想知道什么是最好的和更快的 使用mysql触发器或选择如下查询: select count(*) from comments where discussion_id=something 不同类型的间接费用: 使用触发器,您在插入过程中将有额外的时间,并且可能会由于某些不可预见的原因而随着时间的推移而失去同步 通过查询,您将始终得到正确的答案,但需要在运行时进行计算。通常情况下,这应该非常快,尤其是在讨论i

我使用mysql触发器更新一个名为comments\u count的y DB表中的列,但我想知道什么是最好的和更快的

使用mysql触发器或选择如下查询:

select count(*) from comments where discussion_id=something

不同类型的间接费用:

使用触发器,您在插入过程中将有额外的时间,并且可能会由于某些不可预见的原因而随着时间的推移而失去同步


通过查询,您将始终得到正确的答案,但需要在运行时进行计算。通常情况下,这应该非常快,尤其是在讨论id上有索引的情况下,不同类型的开销:

使用触发器,您在插入过程中将有额外的时间,并且可能会由于某些不可预见的原因而随着时间的推移而失去同步


通过查询,您将始终得到正确的答案,但需要在运行时进行计算。通常情况下,这应该非常快,尤其是讨论id上的索引单独存储计数意味着计数可能与实际评论数不同步。您准备如何应对这一问题?-只要有可能,您应该根据需要派生出可派生的数据,而不是将其存储在某个地方(这意味着
必要时选择COUNT
)。你为什么不想这样做?单独存储计数意味着计数可能与实际评论数不同步。您准备如何应对这一问题?-只要有可能,您应该根据需要派生出可派生的数据,而不是将其存储在某个地方(这意味着
必要时选择COUNT
)。你有没有特别担心为什么你不想这样做?你的意思是我应该使用查询?好吧,有列出的权衡-但是是的-对于我来说,我会使用查询。你的意思是我应该使用查询?好吧,有列出的权衡-但是是的-对于我来说,我会使用查询。