• 注册
  • 查看作者
  • 一次性查询优化.

    部门的同事来找我,说现在用的几个存储过程(离职同事写的)查询太慢,需要几个小时才能出结果,所以打开后看到了这样的内容.

    我不是说我有什么优越感,只是这个槽太大了。

    以下是一些片段。存储过程总共有900行,类似的计算部分大约有400行,其余都是字符串拼接

    该同事还留下了其他几个等待修改的存储过程,并看到完整的文章留下了join,set最多有500行

    十几个表留在一起,或者a.col1=b.col2和a . col 2=b . col 2

    现在我只想钓鱼

    - GMV

    SET

    @start_gmv=(

    挑选

    SUM(`客户付款总额(元) `)

    “历史订单详细信息”

    在哪里

    `估计日期范围`=开始_估计_日期

    和“部门”如CONcat(“%”、@部门,“%”)

    以及“管理团队”如concat(“%”、@ management _ team、“%”)

    和“组”类连接(“%”、@组、“%”)

    );

    SET

    @end_gmv=(

    挑选

    SUM(`客户付款总额(元) `)

    “历史订单详细信息”

    在哪里

    `估计日期范围`=end _ estimated _ date

    和“部门”如CONcat(“%”、@部门,“%”)

    以及“管理团队”如concat(“%”、@ management _ team、“%”)

    和“组”类连接(“%”、@组、“%”)

    );

    -订单数量

    SET

    @start_order=(

    挑选

    计数(*)

    “历史订单详细信息”

    在哪里

    `估计日期范围`=开始_估计_日期

    和“部门”如CONcat(“%”、@部门,“%”)

    以及“管理团队”如concat(“%”、@ management _ team、“%”)

    和“组”类连接(“%”、@组、“%”)

    );

    SET

    @end_order=(

    挑选

    计数(*)

    “历史订单详细信息”

    在哪里

    `估计日期范围`=end _ estimated _ date

    和“部门”如CONcat(“%”、@部门,“%”)

    以及“管理团队”如concat(“%”、@ management _ team、“%”)

    和“组”类连接(“%”、@组、“%”)

    );

    -产品销售

    SET

    @start_sale=(

    挑选

    SUM(`产品销售`)

    “历史订单详细信息”

    在哪里

    `估计日期范围`=开始_估计_日期

    和“部门”如CONcat(“%”、@部门,“%”)

    以及“管理团队”如concat(“%”、@ management _ team、“%”)

    和“组”类连接(“%”、@组、“%”)

    );

    SET

    @end_sale=(

    挑选

    SUM(`产品销售`)

    “历史订单详细信息”

    在哪里

    `估计日期范围`=end _ estimated _ date

    和“部门”如CONcat(“%”、@部门,“%”)

    以及“管理团队”如concat(“%”、@ management _ team、“%”)

    和“组”类连接(“%”、@组、“%”)

    );

    -客户单价

    SET

    @start_atv=(

    挑选

    SUM(`客户付款总额()`)/COUNT(*)

    “历史订单详细信息”

    在哪里

    `估计日期范围`=开始_估计_日期

    和“部门”如CONcat(“%”、@部门,“%”)

    以及“管理团队”如concat(“%”、@ management _ team、“%”)

    和“组”类连接(“%”、@组、“%”)

    );

    SET

    @end_atv=(

    挑选

    SUM(`客户付款总额()`)/COUNT(*)

    “历史订单详细信息”

    在哪里

    `估计日期范围`=end _ estimated _ date

    和“部门”如CONcat(“%”、@部门,“%”)

    以及“管理团队”如concat(“%”、@ management _ team、“%”)

    和“组”类连接(“%”、@组、“%”)

    );

    -产品成本的比例

    .

  • 0
  • 0
  • 0
  • 3
  • 请登录之后再进行评论

    登录
  • 单栏布局 侧栏位置: