导航
  • 主页
  • 基础类
  • 应用实例
  • 新技术前沿

怎么得知sql的执行效率?

bzscs 2003-12-20 10:21:56
我有两种不同的方式实现同一目的,例如:
UPDATE country SET hits=hits+1 WHERE country=@country
IF @@rowcount=0
INSERT INTO country (country,num) VALUES(@country,1)
-
句子的目的是如果已经存在某国家的记录,就给该记录表示访问次数的列加1,否则就新增一条记录,访问次数为1,下面也是一样的结果,但我怎么分析出哪一种方式更好?

select * from country where country=@country
if @@rowcount=0
INSERT INTO country (country,num) VALUES(@country,1)
else
UPDATE country SET hits=hits+1 WHERE country=@country
...全文
5 点赞 收藏 6
写回复
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
playyuer 2003-12-21
hits ?= num
回复
playyuer 2003-12-21
INSERT INTO country (country,num)
select @country,1
from country
where country = @country

update country
set hits = hits + 1
WHERE country = @country


回复
cgsun 2003-12-21
差不多
回复
美丽心情 2003-12-21
来学习的~~
INSERT INTO country (country,num)
select @country,1
from country
where country = @country

update country
set hits = hits + 1
WHERE country = @country
没看懂~~
回复
binshan 2003-12-20
在查询分析器里是很难测试出来的,除非有海量的数据,但从上面的语句看,我想是第一种较好,因为第二种必定比第一种多一次查询!
回复
wzh1215 2003-12-20
把代码拷到sql分析器中:
用CTRL+L
回复
发动态
发帖子
MS-SQL Server
创建于2007-09-28

3.2w+

社区成员

MS-SQL Server相关内容讨论专区
申请成为版主
社区公告
暂无公告