首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

sql 语句优化解决方案

2013-01-26 
sql 语句优化SELECT TOP 1 t.a FROM (select top(@_n) t1.a from Table1 as t1)由变量取其中某一条数据如

sql 语句优化
SELECT TOP 1 t.a FROM (select top(@_n) t1.a from Table1 as t1)
由变量取其中某一条数据     如果数据特别大   效率很低   请问有什么办法可以优化
[解决办法]
那你不如加个自增ID,然后直接where id=几这样来查
[解决办法]
这样可能会快一些,先把top n放进内存,内存比HDD查询速度要快很多

为你这个语句又没有分页的意思,又没有其他用意,什么不直接Table1中取TOP 1 ,非要嵌套一层?

你可以用ROW_NUMBER()生成序号,然后按照你的需要去对应的序号
;with cte 
as
(
select *,rn=row_number()over(order by getdate()) from table1
)
select * from  cte where rn=1

热点排行