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

一个有关SQL的执行效率的问题

云中客 2006-01-21 08:44:05

有两段SQL的语句,在本地机上运行,哪段语句执行速度和效率更高
1.select * from table1 where cost between (select max(cost) from table2) and (select max(cost)*1.25 from table2)
2
declare @s_max int
declare @l_max int
select @s_max=max(cost) from table2
set @l_max=@s_max*1.25
select * from table1 where cost between @s_max and @l_max
...全文
34 点赞 收藏 2
写回复
2 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
lcooc 2006-01-21
应该是第2个吧,
方法1要查询table2两次,然后比较
方法2只查询table2一次,再赋值,然后比较

如果数据多的话,方法2效率高些吧
回复
淡蓝冰 2006-01-21
第2種吧
回复
发动态
发帖子
MS-SQL Server
创建于2007-09-28

3.2w+

社区成员

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