应用程序:Symfony3.4
ORM:Doctrine2
(我也可以给你配置web服务器)
我遇到了由学说
引起的性能问题查询执行时间为1685.69 ms
然后我通过MySQL控制台运行相同的查询并获得不同的性能结果(115毫秒)
任何猜测?
答案 0 :(得分:2)
如果执行相同的查询,首先从doctrine执行,然后直接执行。然后查询缓存将使第二个查询运行得非常快。
答案 1 :(得分:0)
我刚刚发现了造成差异的原因。
我使用的是PHPStorm的数据库控制台。
我尝试通过终端运行查询并得到相同(慢)的结果。
查询的难点是CASE
语句中的WHERE
。
我用CASE
更改了IFNULL(p0_.updated_at, p0_.created_at)
(查询仍然很重)
最后尝试了下一个:WHERE p0_.created_at >= '2018-01-02 00:00:00' AND p0_.created_at <= '2018-01-02 23:59:59'
(结果大约100毫秒)
我不知道PHP Storm做了什么,但这很奇怪。
感谢您的关注@ frederik-banke-sørensen!