日期:2014-05-17  浏览次数:20481 次

sql嵌套语句
现有表news含字段id,title,addtime,content等。我想从最新添加的10条新闻中随机读取3条出来,求解。

------解决方案--------------------
select
  top 3 *
from
  (select top 10 * from news order by addtime desc)t
order by newid()

------解决方案--------------------
select top 3 * from (select top 10 * from news order by id desc) t order by newid()

------解决方案--------------------
引用:
Quote: 引用:

select
  top 3 *
from
  (select top 10 * from news order by addtime desc)t
order by newid()

果然是这样,非常感谢。顺便问下这个语句里面的t是什么意思呢

t相当于一个表别名,t前面那个()里面的内容,是一个子查询,把它查询出的结果,当成一个名字叫:t的表看。like this: select top 3 * from t order by newid()