我坚持这个。 我想按每组的最大值订购一张表。 (但返回所有行)。
通过示例总是更容易:
def myFunction(provider, obj_type, flag_type)
obj_label_list = []
if flag_type == 1:
obj_type_list = provider.mgmt.list_replication_controller()
elif flag_type == 2:
obj_type_list = provider.mgmt.list_node()
elif flag_type == 3:
obj_type_list = provider.mgmt.list_image()
所需的结果集:
Team | Player | Score
---
red | Bob | 32
red | Jill | 34
red | Shawn| 42
blue | Jake | 29
blue | Paul | 26
blue | Mike | 35
答案 0 :(得分:2)
您可以使用相关子查询:
select t.team, t.player,
(select max(t2.score) from t t2 where t2.team = t.team) as max_score
from t;
您可以使用group by
和join
执行类似操作。
答案 1 :(得分:2)
您可以在选择表
上使用内部联接 select t.team, a.player, t.score
from my_table
inner join (
select team, max(score)
from my_table
group by team
) t on t.team = a.team
order by t.team