从华为数据库慢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'