达梦数据库-学习-20-慢SQL优化之CTE等价改写

目录

 

一、环境信息

二、介绍

三、优化过程

1、原始SQL

2、源SQL执行时间

3、原始SQL执行计划

4、拆分问题

5、过滤性

6、统计信息收集

7、改写思路一

8、改写SQL一

9、改写SQL一的执行计划

10、改写思路二

11、改写SQL二

12、改写SQL二的执行计划


 

一、环境信息

名称
CPU ARM
内存 16G
逻辑核数 8
DM版本 DM Database Server 64 V8

二、介绍

客户表示开发环境x86服务器4C8G,生产服务器ARM服务器8C16G,相同SQL相同数据量执行时间分别为5s和76s,询问我们是否有优化的方法。

三、优化过程

1、原始SQL

SELECT
        T.*
FROM
        (
                SELECT
                        A.*                      ,
                        F.subject as flow_subject,
                        F.status                 ,
                        (
                                SELECT
                                        COUNT(*)
                                FROM
                                        ff_apaas_t_flowlink_info b
                                where
                                        b.flowid     =a.flowid
                                     OR b.link_flowid=a.flowid
                        ) as ref_flow_num
                FROM
                        ff_apaas_t_custom_flowinfo A
                INNER JOIN ff_apaas_es_flow F
                ON
                        F.FLOWID = A.FLOWID
        )
        T
WHERE
    and T.deleted   =0
    and T.ref_appid ='4677D792B8A6405A98C41C62247B33CF'
    and T.ref_deptid='FD1A1A1E7F6B4E0FB75469EB9E4FCD29'
    and
        (
                json_value(json_query(contentjson, '$."0D43C2C162D97E15C9D3175234EADF69"'), '$[0].value') like '%AAEB9F456CB9469DA63F3DBA41C15727%'
             or json_value(json_query(contentjson, '$."0D43C2C162D97E15C9D3175234EADF69"'), '$[0].value') like '%9B772698DA4547E9ABAAD4AF55C69C6F%'
             or json_value(json_query(contentjson, '$."0D43C2C162D97E15C9D3175234EADF69"'), '$[0].value') like '%0505E4FB2704486F8541D5652B489D27%'
             or json_value(json_query(contentjson, '$."0D43C2C162D97E15C9D3175234EADF69"'), '$[0].value') like '%2F089C40DF6E4E2CBEE3B29138485E4B%'
             or json_value(json_query(contentjson, '$."0D43C2C162D97E15C9D3175234EADF69"'), '$[0].value') like '%48B80B2F6B3640559493261B92209CBD%'
             or json_value(json_query(contentjson, '$."0D43C2C162D97E15C9D3175234EADF69"'), '$[0].value') like '%4A32058C140B4CF880DB8C6BA0492E12%'
             or json_value(json_query(contentjson, '$."0D43C2C162D97E15C9D3175234EADF69"'), '$[0].value') like '%58E1A22A6AC84620911F895D77B2615E%'
             or json_value(json_query(contentjson, '$."0D43C2C162D97E15C9D3175234EADF69"'), '$[0].value') like '%78A62C8907F34F068C25B488E56F02BC%'
             or json_value(json_query(contentjson, '$."0D43C2C162D97E15C9D3175234EADF69"'), '$[0].value') like '%7BDA1886AAB44C658BB8546FE20215EE%'
             or json_value(json_query(contentjson, '$."0D43C2C162D97E15C9D3175234EADF69"'), '$[0].value') like '%8579D40F182243A59584B0CAB541063D%'
             or json_value(json_query(contentjson, '$."0D43C2C162D97E15C9D3175234EADF69"'), '$[0].value') like '%8943B7C614E0439595FA906ACA5CC2FD%'
             or json_value(json_query(contentjson, '$."0D43C2C162D97E15C9D3175234EADF69"'), '$[0].value') like '%89FFA80042D74F868C994BE3C0658733%'
             or json_value(json_query(contentjson, '$."0D43C2C162D97E15C9D3175234EADF69"'), '$[0].value') like '%8B62408CF10E4A93B80AB293FC5F0EB1%'
             or json

你可能感兴趣的:(#,达梦数据库-DM-日常学习,数据库,学习,运维,linux,sql)