注册 登录
编程论坛 SQL Server论坛

[求助]问一关于select top N from aa order by id,bb,cc的问题

xinzheng 发布于 2007-08-20 12:41, 1440 次点击
表aa

id bb cc
1 1 1
2 0 2
3 0 2
4 0 3
5 0 3
6 0 4

我要查询出三个记录就是id是1 5 6的三个记录
select top 3 from aa order by bb,id desc
结果把查出的是4 5 6,不知道为什么?
我的意思是根据bb字段从大到小查出三个记录如果bb相同就根据id判断
access数据库,sql数据库我没试过

希望能有关于top查询的资料,关于top我不用的,所以没这方面知识

[此贴子已经被作者于2007-8-20 13:31:57编辑过]

5 回复
#2
C大少2007-08-20 14:23
select top 3 from aa order by bb desc,id desc
你这样试试呢
#3
xinzheng2007-08-20 17:23
以下是引用C大少在2007-8-20 14:23:40的发言:
select top 3 from aa order by bb desc,id desc
你这样试试呢

晕order by bb desc,id desc这样也行的吗?

#4
Kendy1234562007-08-20 17:34
你没试过怎么知道不行?

order by之后的每一个排序字段都需要一个降序的显式说明. 否则认为是升序. order by bb ,id desc 这个desc仅仅对id 有效, 对bb是无效的
#5
gugu07922007-08-23 15:06
是的,同意
#6
fengmumei2007-08-23 16:14
以下是引用Kendy123456在2007-8-20 17:34:03的发言:
你没试过怎么知道不行?

order by之后的每一个排序字段都需要一个降序的显式说明. 否则认为是升序. order by bb ,id desc 这个desc仅仅对id 有效, 对bb是无效的

同意

1