mysql优化 - mysql慢查询copying to tmp table
问题描述
windows server,无论修改my.ini的tmp_table_size,max_heap_table_size到多少,情况都一样。同样的表和查询语句,在本地运行,没出现慢查询。
SELECT g.goods_id, g.goods_name, g.shop_price, g.goods_thumb, SUM(og.goods_number) AS goods_numberFROM `chinaetm`.`ecs_goods` AS g, `chinaetm`.`ecs_order_info` AS o, `chinaetm`.`ecs_order_goods` AS ogWHERE g.is_on_sale = 1AND g.is_alone_sale = 1AND g.is_delete = 0AND ( g.cat_id IN (’21’,’75’,’206’,’207’,’208’,’209’,’210’,’211’,’212’ ) OR g.goods_id IN (’’)) AND og.order_id = o.order_idAND og.goods_id = g.goods_idAND ( o.order_status = ’1’ OR o.order_status = ’5’)AND ( o.pay_status = ’2’ OR o.pay_status = ’1’)AND ( o.shipping_status = ’1’ OR o.shipping_status = ’2’)GROUP BY g.goods_idORDER BY goods_number DESC, g.goods_id DESC
explain结果
问题解答
回答1:谢邀,mysql最终处理sql的执行情况在不同环境和版本下可能有所不同,确定本地环境和线上环境是否一致,表的数据量是否一致,其次,题主可以尝试把or查询改为in查询,看看效率是否有提高。
相关文章:
1. python - pysciter 如何配置运行环境?2. javascript - 这种查询前端如何实现?3. python - 多维列表内一部分字符串型转换为整型4. linux - ubuntu下编译安装node.js失败5. Docker for Mac 创建的dnsmasq容器连不上/不工作的问题6. mysql - 数据库为什么需要锁机制?7. mysql - 连续的24条sql语句,一条条查,还是union all好?8. 在cmd下进入mysql数据库,可以输入中文,但是查看表信息,不显示中文,是怎么回事,怎新手,请老师9. mysql - mybatis多重联合查询的实现10. mysql怎么修改约束啊

网公网安备