第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

排名查詢結果如何去掉重復數據?

排名查詢結果如何去掉重復數據?

喵喵時光機 2019-05-12 13:50:30
有一個用戶排行榜表,需要按分數高低進行名次排序并輸出,如有重復用戶的,取該用戶的最高分現在我是這樣寫的DB::select("SELECTnickname,id,fraction,FIND_IN_SET(fraction,(SELECTGROUP_CONCAT(fractionORDERBYfractionDESC)FROMfan_rankingsWHEREtest_id=$test_id))ASrankFROMfan_rankingsWHEREtest_id=$test_idANDuser_id=$user->idORDERBYfractionDESC");我在ORDERBY前加了個GROUPBY(user_id),但是有報錯,請教下有什么辦法還有怎么用ORM的寫法來呢,感覺用原生的寫有點復雜本人使用的laravel5.4版本請大佬不吝賜教
查看完整描述

2 回答

?
慕姐8265434

TA貢獻1813條經驗 獲得超2個贊

FanRanking::query()->groupBy('user_id')->orderByDesc('fraction')->limit(100)->get(['user_id',\DB::raw('max(fraction)asfraction')])
在laravel社區(qū)某個大佬的回答,看起來簡潔又有用!
                            
查看完整回答
反對 回復 2019-05-12
?
一只斗牛犬

TA貢獻1784條經驗 獲得超2個贊

DB::select("SELECTdistinctnickname,id,fraction,FIND_IN_SET(fraction,(
SELECTGROUP_CONCAT(fraction
ORDERBYfractionDESC)
FROMfan_rankingsWHEREtest_id=$test_id)
)ASrank
FROMfan_rankings
WHEREtest_id=$test_idANDuser_id=$user->idORDERBYfractionDESC");
試試加一個distinct
                            
查看完整回答
反對 回復 2019-05-12
  • 2 回答
  • 0 關注
  • 503 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號