Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 减少重新编译,sp_执行_Sql_Sp Executesql - Fatal编程技术网

Sql 减少重新编译,sp_执行

Sql 减少重新编译,sp_执行,sql,sp-executesql,Sql,Sp Executesql,我对我的服务器上的问题很糟糕,当查询的重新编译问题出现时,我们在这个服务器上报告,这是动态查询所必需的,研究我在这里得到的这个问题的解决方案 当您在变量中放置一个参数时,效果很好,但当我添加逗号时,不会返回任何结果,我已经从试用版进行了几十次转换,替换了 回顾这些数据来自报告,其中许多数据并没有公布​​所以我必须用强硬的方式对待瓦查尔 感谢您的帮助。经过大量研究和尝试,我得到了一个非常令人满意的结果,现在我将监控服务器的结果 CREATE TABLE YEAR_YEAR (Y INT)

我对我的服务器上的问题很糟糕,当查询的重新编译问题出现时,我们在这个服务器上报告,这是动态查询所必需的,研究我在这里得到的这个问题的解决方案

当您在变量中放置一个参数时,效果很好,但当我添加逗号时,不会返回任何结果,我已经从试用版进行了几十次转换,替换了

回顾这些数据来自报告,其中许多数据并没有公布​​所以我必须用强硬的方式对待瓦查尔


感谢您的帮助。

经过大量研究和尝试,我得到了一个非常令人满意的结果,现在我将监控服务器的结果

CREATE TABLE YEAR_YEAR (Y INT)

INSERT YEAR_YEAR (Y) VALUES (2011) 
INSERT YEAR_YEAR (Y) VALUES (2012) 
INSERT YEAR_YEAR (Y) VALUES (2013) 
INSERT YEAR_YEAR (Y) VALUES (2014) 

EXECUTE sys.sp_executesql
    N'SELECT * FROM YEAR_YEAR 
    WHERE
    CONVERT(NVARCHAR,Y) IN (@RAEY)
    '
    ,
    N'@RAEY NVARCHAR(100)',
    @RAEY = N'2012,2013';

EXECUTE sys.sp_executesql
    N'SELECT * FROM YEAR_YEAR 
    WHERE
    (CHARINDEX('','' + CONVERT(VARCHAR,Y) + '','', '','' + REPLACE(@RAEY, '' '', '''') + '','') > 0)
    '
    ,
    N'@RAEY NVARCHAR(100)',
    @RAEY = N'2012,2013';