楼主:使用的是OpenEdge数据库吧,使用【OFFSET 1 或 FIRST 1 ROWS ONLY】来获取1条数据;代替limit功能;
什么数据库,可能不支持limit子句
比如mysql支持,oracle就不支持。
至于实现:
row_number() over(partition by 分组字段 order by 排序字段 desc) rn
然后外套一层,where rn = 1
应该和SQL Server是一样的,在select 后面加个 TOP 1 试试
参考语句:
SELECT TOP(5) 订单.订单ID,SUM(订单明细.单价*(1-折扣)*数量) AS 销售额,公司名称
FROM 订单,订单明细,运货商
WHERE 订单.订单ID = 订单明细.订单ID
AND 订单.运货商= 运货商.运货商ID
GROUP BY 订单.订单ID,公司名称
ORDER BY 销售额DESC