比较查询两个查询结果相同的查询语句的效率

下面有两条查询记录条数相同的SQL语句,并给出了查询执行计划。但不知道如何来读懂这些内容,请大侠们指教。
俩条SQL语句的内容如下:得出的结果都是39条,

1SET STATISTICS TIME  ON
2SET STATISTICS IO ON
3
4select * from drug
5where drugid in(select drugid from userdrug) and bigid = 0
6
7select * from userdrug
8where drugid in (select drugid from drug where bigid = 0)

已知:drug表中的记录是1745条; userdrug表中的记录为199条;
执行查询计划如下:


效率分析结果如下:

第一条语句

 1SQL Server 分析和编译时间: 
 2   CPU 时间 = 0 毫秒,耗费时间 = 0 毫秒。
 3
 4SQL Server 执行时间: 
 5   CPU 时间 = 0 毫秒,耗费时间 = 0 毫秒。
 6SQL Server 分析和编译时间: 
 7   CPU 时间 = 11 毫秒,耗费时间 = 11 毫秒。
 8
 9(所影响的行数为 23 行)
10
11表 'Drug'。扫描计数 48,逻辑读 108 次,物理读 0 次,预读 0 次。
12表 'UserDrug'。扫描计数 1,逻辑读 2 次,物理读 0 次,预读 0 次。
13
14SQL Server 执行时间: 
15   CPU 时间 = 0 毫秒,耗费时间 = 7 毫秒。
16
17SQL Server 执行时间: 
18   CPU 时间 = 0 毫秒,耗费时间 = 7 毫秒。
19
20SQL Server 执行时间: 
21   CPU 时间 = 0 毫秒,耗费时间 = 8 毫秒。
22SQL Server 分析和编译时间: 
23   CPU 时间 = 0 毫秒,耗费时间 = 0 毫秒。
24
25SQL Server 执行时间: 
26   CPU 时间 = 0 毫秒,耗费时间 = 0 毫秒。

第二条语句
 1SQL Server 分析和编译时间: 
 2   CPU 时间 = 0 毫秒,耗费时间 = 0 毫秒。
 3
 4SQL Server 执行时间: 
 5   CPU 时间 = 0 毫秒,耗费时间 = 0 毫秒。
 6SQL Server 分析和编译时间: 
 7   CPU 时间 = 0 毫秒,耗费时间 = 8 毫秒。
 8
 9(所影响的行数为 23 行)
10
11表 'Drug'。扫描计数 199,逻辑读 419 次,物理读 0 次,预读 0 次。
12表 'UserDrug'。扫描计数 1,逻辑读 2 次,物理读 0 次,预读 0 次。
13
14SQL Server 执行时间: 
15   CPU 时间 = 0 毫秒,耗费时间 = 2 毫秒。
16
17SQL Server 执行时间: 
18   CPU 时间 = 0 毫秒,耗费时间 = 3 毫秒。
19
20SQL Server 执行时间: 
21   CPU 时间 = 0 毫秒,耗费时间 = 3 毫秒。
22SQL Server 分析和编译时间: 
23   CPU 时间 = 0 毫秒,耗费时间 = 0 毫秒。
24
25SQL Server 执行时间: 
26   CPU 时间 = 0 毫秒,耗费时间 = 0 毫秒。
posted @ 2006-12-05 09:36  许文  阅读(884)  评论(0编辑  收藏  举报