W
wang2855
Unregistered / Unconfirmed
GUEST, unregistred user!
sql="select top n * from tablename order by newid()"
是随机提取tablename中的数据
请高手告诉我为什么我每次用查出的newid 作为字符替换newid()却显示的数据的顺序是固定的前n条?
谁能告诉我,Sql Server 是如何执行的,
select top n * from tablename order by newid(),
我原先以为是先生成newid(),然后在执行select 语句,但是比如
newid='DC750F49-308E-4955-AA2F-1E032A1A30C8'
我用上面的字符替换,sql变成:
select top n * from tablename order by 'DC750F49-308E-4955-AA2F-1E032A1A30C8'
结果查出的数据是固定的,很明显我的理解不对。
是随机提取tablename中的数据
请高手告诉我为什么我每次用查出的newid 作为字符替换newid()却显示的数据的顺序是固定的前n条?
谁能告诉我,Sql Server 是如何执行的,
select top n * from tablename order by newid(),
我原先以为是先生成newid(),然后在执行select 语句,但是比如
newid='DC750F49-308E-4955-AA2F-1E032A1A30C8'
我用上面的字符替换,sql变成:
select top n * from tablename order by 'DC750F49-308E-4955-AA2F-1E032A1A30C8'
结果查出的数据是固定的,很明显我的理解不对。