SQL求解

Agile牧 2016-02-15 06:18:54
一张Item表
ID Name GROUP COST
1 iPhone IOS 8
2 iPad IOS 10
3 Samsung Android 10
4 Huawei Android 7
5 Xiaomi Android 6
6 Redhat Linux 7
7 Ubuntu Linux 8

如上所示,如何按GROUP查询,返回cost最大的item,结果要如下图所示
2 iPad IOS 10
3 Samsumg Android 10
7 Ubuntu Linux 8
...全文
176 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
xu176032 2016-02-16
  • 打赏
  • 举报
回复

select id, name, group, cost
  from (select id,
               name,
               group,
               cost,
               row_number() over(partition by group1 order by cost desc) fn
          from Item)
 where fn = 1
PCCYC 2016-02-16
  • 打赏
  • 举报
回复

select id,name,group,cost from item, (select group gp,max(cost) maxcost from item group by group) where group=gp and cost =maxcost;
非典型宅男c 2016-02-16
  • 打赏
  • 举报
回复
你是想要 order by 吧?
Agile牧 2016-02-16
  • 打赏
  • 举报
回复
引用 1 楼 BOKYYY 的回复:
select * from Item where COST in (select max(COST) from Item group by [GROUP] )
这个是不对滴
Agile牧 2016-02-16
  • 打赏
  • 举报
回复
引用 2 楼 BOKYYY 的回复:
select * from Item a where COST in (select max(COST) from Item b where a.GROUP=b.GROUP group by [GROUP] ) 这样子的更精准
这个正解
Agile牧 2016-02-16
  • 打赏
  • 举报
回复


BOKYYY 2016-02-15
  • 打赏
  • 举报
回复
select * from Item a where COST in (select max(COST) from Item b where a.GROUP=b.GROUP group by [GROUP] ) 这样子的更精准
BOKYYY 2016-02-15
  • 打赏
  • 举报
回复
select * from Item where COST in (select max(COST) from Item group by [GROUP] )

17,089

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧