group by分組取組內第一條

2021-10-24 19:36:09 字數 731 閱讀 7979

舉個例子

student表

select

*from student

id name age gender

1 張三丰 16

12 滅絕師太 17

03 掃地僧 18

14 楊逍 19

1

按照gender進行分組,獲取每個組內年齡最大的,很明顯gender為1的age應該是19,但是事實卻不是

select

a.*from

(select

*from student order

by age desc

) agroup

by a.gender

id name age gender

2 滅絕師太 17

01 張三丰 16

1

這時候如果新增乙個limit,便可以得到正確的結果

select

a.*from

(select

*from student order

by age desc

limit

1000

) agroup

by a.gender

id name age gender

2 滅絕師太 17

04 楊逍 19

1

Group By 分組並取第一條資料

mysql 我使用排序進行篩選,保證分組 排序之後我的第一條資料就是我要的資料 select a.code a.type as 班型 max a.num from select from cent ylb numclass group by code,type order by code,num d...

Hive分組取第一條記錄

交易系統,財務要求維護每個使用者首個交易完成的訂單資料 首單表,可取每個使用者交易完成時間最老的訂單資料 舉例 簡寫版的表結構 表資料 則 財務希望彙總記錄如下 uidorder id service completion time244 2017 02 03 12 23 01.0333 2017 ...

Oracle分組,取每個分組的第一條資料

最近有個有個業務需求 springboot專案集合mybatis 需要查詢分組後,取每組的第一條資料 oracle資料庫 可以在業務 中實現,但是過於繁瑣,後來查閱oracle的函式,得出僅僅在sql中即可實現,非常簡潔,簡化 sql如下 select from select t user.row ...