在下面的查询中,有重复的计算,例如对SUM(p.amount)的三个调用。MySQL是否为每个函数调用重新计算,还是在引擎盖下有某种回忆录优化?如果不是,如何优化这类查询以获得最大的性能?似乎在第一次计算之后,通过别名total_payemnts获得下一次计算会更快,但这只会引发一个错误。) AS 'num_rentals',
SUM(p.amount) / C
我对MySQL连接和SUM有个问题。因为我的JOIN有多个匹配项,所以我将在联接中做一个选择,所以它不会加到多少。我的查询非常慢。在下面的测试设置中,它只在1ms内运行,没有任何索引。但是在我的生产数据库中,当只选择一个记录(WHERE id = X)时,这个查询需要4秒。表A有~700.000项记录表c有45.000条记录
我有这个查询,但是显然,WITH语句还没有在一些数据库系统中实现。如何重写此查询才能获得相同的结果。基本上,此查询的作用是提供数据库中所有分支的分支名称,这些分支的存款总额小于所有分支加在一起的平均值。WITH branch_total (branch_name, value) AS GROUP BY b