求一个简单的SQL语句(100)

  • 主题发起人 主题发起人 leadroy
  • 开始时间 开始时间
L

leadroy

Unregistered / Unconfirmed
GUEST, unregistred user!
一表保存所有客户定单的金额。表结构如下:客户ID 定单金额1 2001 3501 10002 1502 6002 500想用一条SQL语句查出所有客户定单额最小的前二条记录结果如下:客户ID 定单金额1 2001 3502 1502 500谢谢大家的帮助。我使用的是SQL SERVER 2000
 
如果有三条记录的金额一样,那怎么取??随便取???
 
先根据客户ID分组,再根据订单金额排序,top 2
 
知识有限:想到的是借用临时表遍历每个客户,insert #result select top 2 ID,JE from orders where ID=@ID order by JE最后 select * from #result order by ID,JEsorry,想不出一句话解决问题的语句
 
select * from 客户定单 bwhere 单据号 in (select top 2 单据号 from 客户定单 c where c.客户ID=b.客户ID order by 定单金额 )
 
select * from 客户定单 bwhere 单据号 in (select top 2 单据号 from 客户定单 c where c.客户ID=b.客户ID order by 客户ID,定单金额 ) order by 客户ID,定单金额
 
后退
顶部