小编Gab*_*iel的帖子

SQL Server查询使用参数比使用常量字符串花费更长时间

我遇到了MS SQL Server 2008的问题,它是:

当我使用硬编码字符串作为参数执行查询时,我的查询运行得很快但是当我使用字符串参数时,查询需要更长时间!
常量字符串查询需要1秒,而另一个需要11秒.

以下是代码:

常量字符串(1秒):

     SELECT * 
FROM   VIEWCONTENTS 
WHERE  COUNTRY = 'ZA' 
       AND CONTENTTYPE = 'A' 
       AND TASK = 'R23562'; 
Run Code Online (Sandbox Code Playgroud)

参数化(11秒):

DECLARE @country AS CHAR(2); 

SET @country = 'ZA'; 

SELECT * 
FROM   VIEWCONTENTS 
WHERE  COUNTRY = @country 
       AND CONTENTTYPE = 'A' 
       AND TASK = 'R23562' 
Run Code Online (Sandbox Code Playgroud)

sql-server parameters performance database-performance

6
推荐指数
1
解决办法
1397
查看次数