不明白阿 select @ID=ID top 10 from table1 where ID between @Number1 and @Number2 什么意思阿?? 一个变量能保存10个数????
请问: 估计以上的查询环境查询10条记录 约多少时间? Server: PIII 1.4G Double SCSI 40 Hard Disk 256M memory
select a.* from table1 a ,(select top 10 id from table1 where ID between @Number1 and @Number2)b where a.id=b.id
>>> select @ID=ID top 10 from table1 where ID between @Number1 and @Number2這條語句我怎麼看都是錯誤。 select top 10 @ID=ID from table1 where ID between @Number1 and @Number2 這樣才正確. 但看清了,這里是TOP 10, 而且ID上有Pirmary Key(意有Cluster index),且假設排序是ASC的話,那麼,這里得出來的@ID值就一定等於@Number2!!!>>> 然后,再用select * from table1 where ID=@ID 何苦這樣來著!用SELECT * FROM table1 WHERE ID=@Number2不來得更快?
select @ID=ID top 10 from table1 where ID between @Number1 and @Number2
什么意思阿??
一个变量能保存10个数????
估计以上的查询环境查询10条记录
约多少时间?
Server:
PIII 1.4G Double SCSI 40 Hard Disk
256M memory
from table1 a ,(select top 10 id from table1 where ID between @Number1 and @Number2)b
where a.id=b.id
select @ID=ID top 10 from table1 where ID between @Number1 and @Number2這條語句我怎麼看都是錯誤。
select top 10 @ID=ID from table1 where ID between @Number1 and @Number2
這樣才正確. 但看清了,這里是TOP 10, 而且ID上有Pirmary Key(意有Cluster index),且假設排序是ASC的話,那麼,這里得出來的@ID值就一定等於@Number2!!!>>>
然后,再用select * from table1 where ID=@ID 何苦這樣來著!用SELECT * FROM table1 WHERE ID=@Number2不來得更快?
严谨!!!
但是:"這里得出來的@ID值就一定等於@Number2!!!"???
如果"ID"中没有"@Number2"呢?
请指教!