任务描述

从华为数据库慢sql 捞出的, RB_Product_Language  看似想程伟的,若不对,请专给相关人或我


1. 问题描述,分析

   count查询条件里 将In()查询改为零时表或表值参数,目前51个in查询导致查询慢


2.解决方案:

   将where 条件里 In 改用零时表或表值参数后 join 查询,


  select count(0) as total from RB_Product_Language (nolock) WHERE CustomerID =1 AND
SKU in (8623699, 8624436, 8624365,8625510)
 
 --select count(0) from  RB_Product_Language (nolock) WHERE CustomerID =1
 --151000027


3.原始sql:

exec sp_executesql N'select count(0) as total from RB_Product_Language (nolock) WHERE CustomerID =@p1 AND SKU in (@p2, @p3, @p4, @p5, @p6, @p7, @p8, @p9, @p10, @p11, @p12, @p13, @p14, @p15, @p16, @p17, @p18, @p19, @p20, 
@p21, @p22, @p23, @p24, @p25, @p26, @p27, @p28, @p29, @p30, @p31, @p32, @p33, @p34, @p35, @p36, @p37, @p38, @p39, @p40, @p41, @p42, @p43, @p44, @p45, @p46, @p47, @p48, @p49, @p50, @p51)',N'@p1 bigint,@p2 nvarchar(7),@p3 nvarchar(7),@p4 nvarchar(7),@p5 nvarchar(7),@p6 nvarchar(7),@p7 nvarchar(7),@p8 nvarchar(7),@p9 nvarchar(7),@p10 nvarchar(7),@p11 nvarchar(7),@p12 nvarchar(7),@p13 nvarchar(7),@p14 nvarchar(7),@p15 nvarchar(7),@p16 nvarchar(7),@p17 nvarchar(7),@p18 nvarchar(7),@p19 nvarchar(7),@p20 nvarchar(7),@p21 nvarchar(7),@p22 nvarchar(7),@p23 nvarchar(7),@p24 nvarchar(7),@p25 nvarchar(7),@p26 nvarchar(7),@p27 nvarchar(7),@p28 nvarchar(7),@p29 nvarchar(7),@p30 nvarchar(7),@p31 nvarchar(7),@p32 nvarchar(7),@p33 nvarchar(7),@p34 nvarchar(7),@p35 nvarchar(7),@p36 nvarchar(7),@p37 nvarchar(7),@p38 nvarchar(7),@p39 nvarchar(7),@p40 nvarchar(7),@p41 nvarchar(7),@p42 nvarchar(7),@p43 nvarchar(7),@p44 nvarchar(7),@p45 nvarchar(7),@p46 nvarchar(7),@p47 nvarchar(7),@p48 nvarchar(7),@p49 nvarchar(7),@p50 nvarchar(7),@p51 nvarchar(7)',@p1=1,@p2=N'8623699',@p3=N'8624436',@p4=N'8624365',@p5=N'8625035',@p6=N'8625080',@p7=N'8625401',@p8=N'8625510',@p9=N'8625707',@p10=N'8625911',@p11=N'8626275',@p12=N'8626442',@p13=N'8626431',@p14=N'8626621',@p15=N'8626282',@p16=N'8626778',@p17=N'8626711',@p18=N'8626888',@p19=N'8626683',@p20=N'8626954',@p21=N'8626962',@p22=N'8627317',@p23=N'8627406',@p24=N'8627276',@p25=N'8628068',@p26=N'8628313',@p27=N'8628671',@p28=N'8628767',@p29=N'8629389',@p30=N'8629502',@p31=N'8629760',@p32=N'8629857',@p33=N'8629925',@p34=N'8630548',@p35=N'8631032',@p36=N'8631629',@p37=N'8631711',@p38=N'8631743',@p39=N'8631769',@p40=N'8631872',@p41=N'8632438',@p42=N'8632508',@p43=N'8632860',@p44=N'8632890',@p45=N'8633169',@p46=N'8633658',@p47=N'8634143',@p48=N'8633880',@p49=N'8634416',@p50=N'8634499',@p51=N'8634506'

历史记录  
  1. 2022-05-04 12:26:50, 由 陈少军 创建。
  2. 2022-05-04 12:27:15, 由 陈少军 指派给 程伟。
    修改了 预计剩余,旧值为 "0",新值为 "2"。
    参考解决方案 建议 修改
  3. 2022-05-25 16:10:19, 由 何建宝 编辑。
    修改了 任务描述,区别为:
    012- exec sp_executesql N'select count(0) as total from RB_Product_Language (nolock) WHERE CustomerID =@p1 AND SKU in (@p2, @p3, @p4, @p5, @p6, @p7, @p8, @p9, @p10, @p11, @p12, @p13, @p14, @p15, @p16, @p17, @p18, @p19, @p20,@p21, @p22, @p23, @p24, @p25, @p26, @p27, @p28, @p29, @p30, @p31, @p32, @p33, @p34, @p35, @p36, @p37, @p38, @p39, @p40, @p41, @p42, @p43, @p44, @p45, @p46, @p47, @p48, @p49, @p50, @p51)',N'@p1 bigint,@p2 nvarchar(7),@p3 nvarchar(7),@p4 nvarchar(7),@p5 nvarchar(7),@p6 nvarchar(7),@p7 nvarchar(7),@p8 nvarchar(7),@p9 nvarchar(7),@p10 nvarchar(7),@p11 nvarchar(7),@p12 nvarchar(7),@p13 nvarchar(7),@p14 nvarchar(7),@p15 nvarchar(7),@p16 nvarchar(7),@p17 nvarchar(7),@p18 nvarchar(7),@p19 nvarchar(7),@p20 nvarchar(7),@p21 nvarchar(7),@p22 nvarchar(7),@p23 nvarchar(7),@p24 nvarchar(7),@p25 nvarchar(7),@p26 nvarchar(7),@p27 nvarchar(7),@p28 nvarchar(7),@p29 nvarchar(7),@p30 nvarchar(7),@p31 nvarchar(7),@p32 nvarchar(7),@p33 nvarchar(7),@p34 nvarchar(7),@p35 nvarchar(7),@p36 nvarchar(7),@p37 nvarchar(7),@p38 nvarchar(7),@p39 nvarchar(7),@p40 nvarchar(7),@p41 nvarchar(7),@p42 nvarchar(7),@p43 nvarchar(7),@p44 nvarchar(7),@p45 nvarchar(7),@p46 nvarchar(7),@p47 nvarchar(7),@p48 nvarchar(7),@p49 nvarchar(7),@p50 nvarchar(7),@p51 nvarchar(7)',@p1=1,@p2=N'8623699',@p3=N'8624436',@p4=N'8624365',@p5=N'8625035',@p6=N'8625080',@p7=N'8625401',@p8=N'8625510',@p9=N'8625707',@p10=N'8625911',@p11=N'8626275',@p12=N'8626442',@p13=N'8626431',@p14=N'8626621',@p15=N'8626282',@p16=N'8626778',@p17=N'8626711',@p18=N'8626888',@p19=N'8626683',@p20=N'8626954',@p21=N'8626962',@p22=N'8627317',@p23=N'8627406',@p24=N'8627276',@p25=N'8628068',@p26=N'8628313',@p27=N'8628671',@p28=N'8628767',@p29=N'8629389',@p30=N'8629502',@p31=N'8629760',@p32=N'8629857',@p33=N'8629925',@p34=N'8630548',@p35=N'8631032',@p36=N'8631629',@p37=N'8631711',@p38=N'8631743',@p39=N'8631769',@p40=N'8631872',@p41=N'8632438',@p42=N'8632508',@p43=N'8632860',@p44=N'8632890',@p45=N'8633169',@p46=N'8633658',@p47=N'8634143',@p48=N'8633880',@p49=N'8634416',@p50=N'8634499',@p51=N'8634506'
    012+ exec sp_executesql N'select count(0) as total from RB_Product_Language (nolock) WHERE CustomerID =@p1 AND SKU in (@p2, @p3, @p4, @p5, @p6, @p7, @p8, @p9, @p10, @p11, @p12, @p13, @p14, @p15, @p16, @p17, @p18, @p19, @p20,@p21, @p22, @p23, @p24, @p25, @p26, @p27, @p28, @p29, @p30, @p31, @p32, @p33, @p34, @p35, @p36, @p37, @p38, @p39, @p40, @p41, @p42, @p43, @p44, @p45, @p46, @p47, @p48, @p49, @p50, @p51)',N'@p1 bigint,@p2 nvarchar(7),@p3 nvarchar(7),@p4 nvarchar(7),@p5 nvarchar(7),@p6 nvarchar(7),@p7 nvarchar(7),@p8 nvarchar(7),@p9 nvarchar(7),@p10 nvarchar(7),@p11 nvarchar(7),@p12 nvarchar(7),@p13 nvarchar(7),@p14 nvarchar(7),@p15 nvarchar(7),@p16 nvarchar(7),@p17 nvarchar(7),@p18 nvarchar(7),@p19 nvarchar(7),@p20 nvarchar(7),@p21 nvarchar(7),@p22 nvarchar(7),@p23 nvarchar(7),@p24 nvarchar(7),@p25 nvarchar(7),@p26 nvarchar(7),@p27 nvarchar(7),@p28 nvarchar(7),@p29 nvarchar(7),@p30 nvarchar(7),@p31 nvarchar(7),@p32 nvarchar(7),@p33 nvarchar(7),@p34 nvarchar(7),@p35 nvarchar(7),@p36 nvarchar(7),@p37 nvarchar(7),@p38 nvarchar(7),@p39 nvarchar(7),@p40 nvarchar(7),@p41 nvarchar(7),@p42 nvarchar(7),@p43 nvarchar(7),@p44 nvarchar(7),@p45 nvarchar(7),@p46 nvarchar(7),@p47 nvarchar(7),@p48 nvarchar(7),@p49 nvarchar(7),@p50 nvarchar(7),@p51 nvarchar(7)',@p1=1,@p2=N'8623699',@p3=N'8624436',@p4=N'8624365',@p5=N'8625035',@p6=N'8625080',@p7=N'8625401',@p8=N'8625510',@p9=N'8625707',@p10=N'8625911',@p11=N'8626275',@p12=N'8626442',@p13=N'8626431',@p14=N'8626621',@p15=N'8626282',@p16=N'8626778',@p17=N'8626711',@p18=N'8626888',@p19=N'8626683',@p20=N'8626954',@p21=N'8626962',@p22=N'8627317',@p23=N'8627406',@p24=N'8627276',@p25=N'8628068',@p26=N'8628313',@p27=N'8628671',@p28=N'8628767',@p29=N'8629389',@p30=N'8629502',@p31=N'8629760',@p32=N'8629857',@p33=N'8629925',@p34=N'8630548',@p35=N'8631032',@p36=N'8631629',@p37=N'8631711',@p38=N'8631743',@p39=N'8631769',@p40=N'8631872',@p41=N'8632438',@p42=N'8632508',@p43=N'8632860',@p44=N'8632890',@p45=N'8633169',@p46=N'8633658',@p47=N'8634143',@p48=N'8633880',@p49=N'8634416',@p50=N'8634499',@p51=N'8634506'
    012- <p>exec sp_executesql N'select count(0) as total from RB_Product_Language (nolock) WHERE CustomerID =@p1 AND SKU in (@p2, @p3, @p4, @p5, @p6, @p7, @p8, @p9, @p10, @p11, @p12, @p13, @p14, @p15, @p16, @p17, @p18, @p19, @p20,<br />@p21, @p22, @p23, @p24, @p25, @p26, @p27, @p28, @p29, @p30, @p31, @p32, @p33, @p34, @p35, @p36, @p37, @p38, @p39, @p40, @p41, @p42, @p43, @p44, @p45, @p46, @p47, @p48, @p49, @p50, @p51)',N'@p1 bigint,@p2 nvarchar(7),@p3 nvarchar(7),@p4 nvarchar(7),@p5 nvarchar(7),@p6 nvarchar(7),@p7 nvarchar(7),@p8 nvarchar(7),@p9 nvarchar(7),@p10 nvarchar(7),@p11 nvarchar(7),@p12 nvarchar(7),@p13 nvarchar(7),@p14 nvarchar(7),@p15 nvarchar(7),@p16 nvarchar(7),@p17 nvarchar(7),@p18 nvarchar(7),@p19 nvarchar(7),@p20 nvarchar(7),@p21 nvarchar(7),@p22 nvarchar(7),@p23 nvarchar(7),@p24 nvarchar(7),@p25 nvarchar(7),@p26 nvarchar(7),@p27 nvarchar(7),@p28 nvarchar(7),@p29 nvarchar(7),@p30 nvarchar(7),@p31 nvarchar(7),@p32 nvarchar(7),@p33 nvarchar(7),@p34 nvarchar(7),@p35 nvarchar(7),@p36 nvarchar(7),@p37 nvarchar(7),@p38 nvarchar(7),@p39 nvarchar(7),@p40 nvarchar(7),@p41 nvarchar(7),@p42 nvarchar(7),@p43 nvarchar(7),@p44 nvarchar(7),@p45 nvarchar(7),@p46 nvarchar(7),@p47 nvarchar(7),@p48 nvarchar(7),@p49 nvarchar(7),@p50 nvarchar(7),@p51 nvarchar(7)',@p1=1,@p2=N'8623699',@p3=N'8624436',@p4=N'8624365',@p5=N'8625035',@p6=N'8625080',@p7=N'8625401',@p8=N'8625510',@p9=N'8625707',@p10=N'8625911',@p11=N'8626275',@p12=N'8626442',@p13=N'8626431',@p14=N'8626621',@p15=N'8626282',@p16=N'8626778',@p17=N'8626711',@p18=N'8626888',@p19=N'8626683',@p20=N'8626954',@p21=N'8626962',@p22=N'8627317',@p23=N'8627406',@p24=N'8627276',@p25=N'8628068',@p26=N'8628313',@p27=N'8628671',@p28=N'8628767',@p29=N'8629389',@p30=N'8629502',@p31=N'8629760',@p32=N'8629857',@p33=N'8629925',@p34=N'8630548',@p35=N'8631032',@p36=N'8631629',@p37=N'8631711',@p38=N'8631743',@p39=N'8631769',@p40=N'8631872',@p41=N'8632438',@p42=N'8632508',@p43=N'8632860',@p44=N'8632890',@p45=N'8633169',@p46=N'8633658',@p47=N'8634143',@p48=N'8633880',@p49=N'8634416',@p50=N'8634499',@p51=N'8634506'<br /></p>
    012+ <p>exec sp_executesql N'select count(0) as total from RB_Product_Language (nolock) WHERE CustomerID =@p1 AND SKU in (@p2, @p3, @p4, @p5, @p6, @p7, @p8, @p9, @p10, @p11, @p12, @p13, @p14, @p15, @p16, @p17, @p18, @p19, @p20,<br />@p21, @p22, @p23, @p24, @p25, @p26, @p27, @p28, @p29, @p30, @p31, @p32, @p33, @p34, @p35, @p36, @p37, @p38, @p39, @p40, @p41, @p42, @p43, @p44, @p45, @p46, @p47, @p48, @p49, @p50, @p51)',N'@p1 bigint,@p2 nvarchar(7),@p3 nvarchar(7),@p4 nvarchar(7),@p5 nvarchar(7),@p6 nvarchar(7),@p7 nvarchar(7),@p8 nvarchar(7),@p9 nvarchar(7),@p10 nvarchar(7),@p11 nvarchar(7),@p12 nvarchar(7),@p13 nvarchar(7),@p14 nvarchar(7),@p15 nvarchar(7),@p16 nvarchar(7),@p17 nvarchar(7),@p18 nvarchar(7),@p19 nvarchar(7),@p20 nvarchar(7),@p21 nvarchar(7),@p22 nvarchar(7),@p23 nvarchar(7),@p24 nvarchar(7),@p25 nvarchar(7),@p26 nvarchar(7),@p27 nvarchar(7),@p28 nvarchar(7),@p29 nvarchar(7),@p30 nvarchar(7),@p31 nvarchar(7),@p32 nvarchar(7),@p33 nvarchar(7),@p34 nvarchar(7),@p35 nvarchar(7),@p36 nvarchar(7),@p37 nvarchar(7),@p38 nvarchar(7),@p39 nvarchar(7),@p40 nvarchar(7),@p41 nvarchar(7),@p42 nvarchar(7),@p43 nvarchar(7),@p44 nvarchar(7),@p45 nvarchar(7),@p46 nvarchar(7),@p47 nvarchar(7),@p48 nvarchar(7),@p49 nvarchar(7),@p50 nvarchar(7),@p51 nvarchar(7)',@p1=1,@p2=N'8623699',@p3=N'8624436',@p4=N'8624365',@p5=N'8625035',@p6=N'8625080',@p7=N'8625401',@p8=N'8625510',@p9=N'8625707',@p10=N'8625911',@p11=N'8626275',@p12=N'8626442',@p13=N'8626431',@p14=N'8626621',@p15=N'8626282',@p16=N'8626778',@p17=N'8626711',@p18=N'8626888',@p19=N'8626683',@p20=N'8626954',@p21=N'8626962',@p22=N'8627317',@p23=N'8627406',@p24=N'8627276',@p25=N'8628068',@p26=N'8628313',@p27=N'8628671',@p28=N'8628767',@p29=N'8629389',@p30=N'8629502',@p31=N'8629760',@p32=N'8629857',@p33=N'8629925',@p34=N'8630548',@p35=N'8631032',@p36=N'8631629',@p37=N'8631711',@p38=N'8631743',@p39=N'8631769',@p40=N'8631872',@p41=N'8632438',@p42=N'8632508',@p43=N'8632860',@p44=N'8632890',@p45=N'8633169',@p46=N'8633658',@p47=N'8634143',@p48=N'8633880',@p49=N'8634416',@p50=N'8634499',@p51=N'8634506'</p>
    表是我这边的,但是搜ERP代码没有搜到,不知道哪个地方调用的
  4. 2022-05-25 16:31:27, 由 程伟 指派给 唐飞飞。
    修改了 指派给,旧值为 "chengwei",新值为 "tangfeifei"。
    5月30号之前完成
  5. 2022-05-30 09:27:49, 由 唐飞飞 指派给 陈少军。
    修改了 指派给,旧值为 "tangfeifei",新值为 "chenshaojun"。

    在程序中并没有发现这个sql语句。筛选方式:

    1、在ERP程序中搜索“total from RB_Product_Language”,未发现

    2、在程序中搜索“RB_Product_Language”,并未找到类似的sql语句

    3、在自定义报告配置表中查找sql语句,根据"RB_Product_Language"也没有找到

  6. 2022-07-08 09:49:57, 由 夏宇 移动,之前为 "#626 系统管理部 - 系统服务优化 "。
  7. 2022-07-18 09:10:42, 由 陈少军 完成。
    修改了 总计消耗,旧值为 "0",新值为 "1"。
    修改了 实际完成,旧值为 "",新值为 "2022-07-18 09:10:14"。
    修改了 任务状态,旧值为 "wait",新值为 "done"。
    修改了 实际开始,旧值为 "0000-00-00 00:00:00",新值为 "2022-07-18 09:10:42"。
    修改了 预计剩余,旧值为 "2",新值为 "0"。
    修改了 由谁完成,旧值为 "",新值为 "chenshaojun"。
    开发没有找到对应的慢sql, 先关闭
  8. 2022-07-25 10:33:33, 由 夏宇 编辑。
    修改了 所属迭代,旧值为 "637",新值为 "626"。
  9. 2023-10-31 14:53:12, 由 周杰 关闭。
    修改了 任务状态,旧值为 "done",新值为 "closed"。
    修改了 指派给 ,旧值为 "chenshaojun",新值为 "closed"。
    修改了 由谁关闭,旧值为 "",新值为 "zhoujie"。
    修改了 关闭时间,旧值为 "0000-00-00 00:00:00",新值为 "2023-10-31 14:53:12"。
    修改了 关闭原因,旧值为 "",新值为 "done"。
所属迭代 系统管理部 - 系统服务优化
所属模块 /
相关需求 暂无
指派给 Closed 于 2023-10-31 14:53:12
任务类型 后端
任务标签 初始
开发组
任务状态 已关闭
进度 100%
优先级 P2
关键词
抄送给 刘灿 黄金龙 胡晓龙
由谁创建 陈少军 于 2022-05-04 12:26:50
由谁完成 陈少军 于 2022-07-18 09:10:14
由谁取消 暂无
由谁关闭 周杰 于 2023-10-31 14:53:12
关闭原因 已完成
最后编辑 周杰 于 2023-10-31 14:53:12
团队 最初预计 总计消耗 预计剩余
工时信息
最初预计 0工时
总计消耗 1工时
预计剩余 0工时
预计开始 2022-05-04
实际开始 2022-07-18
截止日期 2022-05-04