我该怎么写这个sql语句 (20分)

  • 主题发起人 主题发起人 ifcansee
  • 开始时间 开始时间
I

ifcansee

Unregistered / Unconfirmed
GUEST, unregistred user!
我想实现的结果是取name=1的按照a字段排序的前5个
取name=2的按照a字段排序的前5个
取name=3的按照a字段排序的前5个
取name=4的按照a字段排序的前5个
取name=5的按照a字段排序的前5个
....
我用的sql语句是
select top 5 * from table1.dbf where name=1 order by a desc union
select top 5 * from table1.dbf where name=2 order by a desc union
select top 5 * from table1.dbf where name=3 order by a desc union
select top 5 * from table1.dbf where name=4 order by a desc union
select top 5 * from table1.dbf where name=5 order by a desc union
.....
不过不能执行,应该是union不能和order by同时用吧,可是我该怎么做实现这样的结果?
 
有没有人会?!!!
 
使用存储过程依次把查到记录插入到临时表,最后select临时表返回。
 
直接用sql语句不能实现么
 
好象没有简单的。
 
后退
顶部