解決group by分組默認獲取id最小的一條數據


group by 按照名字或者其他屬性分組后,如果id是自增情況下,一般返回結果都是取得按照某個屬性分好組后,id最小的那條數據,如下

 

 

 數據如上圖所示,現在先分組查詢一下看看

 

 

 可以看到,返回的果然是每組中id最小的數據

這時,有個這樣的業務需求,就是要查詢每個用戶最新的數據,此時我想的是先按時間降序,然后在分組取第一個於是

 

 

  咦?我是按照時間降序了,為什么查詢結果還是這樣呢?原因就是上面的group by會返回每組中id最小的數據,於是,接下來可以這樣寫

 

 

 

 

 重點是在划紅框的部分,加上having 1后 可以使group by忽略取id最小的,而是取每組第一個


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM