这似乎是MySql中的一个bug。张贴在这里,以证实我的结论,并分享我的经验。我们目前正在从MS迁移到MySql Community Edition 5.7.12。有一个具有虚拟计算列的Dealers表。它在触发器内部使用的查询的联接中引用。因此,MySql服务器重新启动.
为了确保事件没有其他原因,我们创建了一个没有计算列的虚拟表,并在触发器中引用了该表。然后,我们创建了另一个具有计算列的虚拟表。我们刚才在join中引用了表,而没有
假设我有一个表t,它有4个普通列-- n1、n2、n3、n4和1个虚拟计算列c1。如果我运行以下查询:,是否计算了每一行的c1值,即使我没有将其包括在所选择的列中?根据官方的MySQL文档,这里:
上面写着,rows are read,而不是columns are read。我没有选择计算列,但我猜想它仍在计算中,这会导致缓慢。