任务描述

1.问题分析

华为日志里大量的这个慢sql,执行时间15秒左右,请求很多



2.解决方案

2.1因要查询多个字段,而且Apx_BasicPlan_LogDetail表数据量大,优化方案是先查询出id,在通过id join 查询出需要的字段,测试速度非常快1秒左右

2.2 优化后的sql


SELECT `CustomerId`,`PlanId`,`PlanType`,`DeleteCheckId`,`ExecuteGuid`,`ExecuteType`,`OrderSourceId`,`NewOrderSourceId`,`Brand`,`OrderSourceName`,`NewOrderSourceName`,`Sku`,`OrderSourceSku`,`NewOrderSourceSku`,`Asin`,`IsFba`,`IsUpdateMsrp`,`Status`,`JobNo`,`FeedSubmissionId`,`OperTime`,`UploadUserId`,`UploadUserName`,`Remark`,`FeedMessage`,`Quantity`,`StandardPrice`,`SalePrice`,`OriginalPrice`,`Currency`,`SaleStartDate`,`SaleEndDate`,`NewAsin`,`PublishTime`,`NewPublishTime`,`IsStatistics`,`CreationDate`,`LastModifierId`,`LastModifier`,`LastModificationTime`,`CreatorId`,`Creator`,`CreationTime`,a.Id 
from Apx_BasicPlan_LogDetail a join 
(
select Id 
FROM `Apx_BasicPlan_LogDetail`   WHERE ((((`OrderSourceId` = 14663) AND (`ExecuteType` IN (3,4)) ) AND ( `CustomerId` = 1 )) AND  (`Status` = 2) )  ORDER BY  Id Desc  LIMIT 0,2000
) b on a.Id=b.Id


3.慢sql

SELECT `CustomerId`,`PlanId`,`PlanType`,`DeleteCheckId`,`ExecuteGuid`,`ExecuteType`,`OrderSourceId`,`NewOrderSourceId`,`Brand`,`OrderSourceName`,`NewOrderSourceName`,`Sku`,`OrderSourceSku`,`NewOrderSourceSku`,`Asin`,`IsFba`,`IsUpdateMsrp`,`Status`,`JobNo`,`FeedSubmissionId`,`OperTime`,`UploadUserId`,`UploadUserName`,`Remark`,`FeedMessage`,`Quantity`,`StandardPrice`,`SalePrice`,`OriginalPrice`,`Currency`,`SaleStartDate`,`SaleEndDate`,`NewAsin`,`PublishTime`,`NewPublishTime`,`IsStatistics`,`CreationDate`,`LastModifierId`,`LastModifier`,`LastModificationTime`,`CreatorId`,`Creator`,`CreationTime`,`Id` FROM `Apx_BasicPlan_LogDetail`   WHERE ((((`OrderSourceId` = 14663) AND (`ExecuteType` IN (3,4)) ) AND ( `CustomerId` = 1 )) AND  (`Status` = 2) )  ORDER BY  Id Desc  LIMIT 0,2000;

历史记录  
  1. 2023-04-24 14:37:18, 由 陈少军 创建。
  2. 2023-04-24 14:40:03, 由 罗友军 指派给 温林生。
    修改了 指派给,旧值为 "luoyoujun",新值为 "wenlinsheng"。
  3. 2023-04-26 18:36:15, 由 温林生 完成。
    修改了 总计消耗,旧值为 "0",新值为 "1"。
    修改了 指派给 ,旧值为 "wenlinsheng",新值为 "chenshaojun"。
    修改了 实际完成,旧值为 "",新值为 "2023-04-26 18:35:24"。
    修改了 任务状态,旧值为 "wait",新值为 "done"。
    修改了 实际开始,旧值为 "0000-00-00 00:00:00",新值为 "2023-04-26 18:36:15"。
    修改了 预计剩余,旧值为 "1",新值为 "0"。
    修改了 由谁完成,旧值为 "",新值为 "wenlinsheng"。

    SQL已优化

  4. 2023-10-31 14:53:16, 由 周杰 关闭。
    修改了 任务状态,旧值为 "done",新值为 "closed"。
    修改了 指派给 ,旧值为 "chenshaojun",新值为 "closed"。
    修改了 由谁关闭,旧值为 "",新值为 "zhoujie"。
    修改了 关闭时间,旧值为 "0000-00-00 00:00:00",新值为 "2023-10-31 14:53:16"。
    修改了 关闭原因,旧值为 "",新值为 "done"。
所属迭代 系统管理部 - 系统服务优化
所属模块 /
相关需求 暂无
指派给 Closed 于 2023-10-31 14:53:16
任务类型 后端
任务标签 初始
开发组 产品采购开发组
任务状态 已关闭
进度 100%
优先级 P2
关键词
抄送给 张华
由谁创建 陈少军 于 2023-04-24 14:37:18
由谁完成 温林生 于 2023-04-26 18:35:24
由谁取消 暂无
由谁关闭 周杰 于 2023-10-31 14:53:16
关闭原因 已完成
最后编辑 周杰 于 2023-10-31 14:53:16
团队 最初预计 总计消耗 预计剩余
工时信息
最初预计 1工时
总计消耗 1工时
预计剩余 0工时
预计开始 2023-04-24
实际开始 2023-04-26
截止日期 2023-04-24