2019-02-25
閱讀量:
842
SQL查詢語句
問題描述:
有用戶對各車系評分表(t_score)如下,請按要求寫出對應(yīng)的sql語句:
用戶QQ號(FUin) 車系名稱(FName) 評分(FScore)
12345 奔馳E級 88
23456 奧迪A4L 88
34567 保時捷 90
12345 奧迪A4L 86
23456 寶馬X5 86
請給出針對2個及以上車系作出評價的用戶信息,并按照所做出評分的平均值由高到低排序(最好不用子查詢)。
備注:每人對同一車系只能評分一次。
解決方法:
SELECT FUin,SUM(FScore)/COUNT(*) AS avgScore
FROM t_score
GROUP BY FUin
HAVING COUNT(*)>=2
ORDER BY avgScore DESC
數(shù)據(jù)如下:

結(jié)果如下:

先對信息進行分組,分組之后這樣同樣用戶ID的不同車系的平分就被劃到組里面,然后對組里面的內(nèi)容求一下Count就是說明123456的總數(shù)就是2,having是對分組之后的結(jié)果進行過濾,然后就進行select查詢,查詢完成之后在order,都是有執(zhí)行順序的。






評論(0)


暫無數(shù)據(jù)
推薦帖子
0條評論
0條評論
0條評論
1條評論