中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

利用postgres 怎么對數據的排名進行查詢

發布時間:2020-12-29 09:04:36 來源:億速云 閱讀:240 作者:Leah 欄目:開發技術

今天就跟大家聊聊有關利用postgres 怎么對數據的排名進行查詢,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。

select * from (select ROW_NUMBER () OVER (ORDER BY fat desc nulls last) AS xuhao,foodnum,foodname,fat from ek_food where isdel=0) food where foodnum = 'Ss192008'

涉及到的問題

1.排序時,字段值為null的會排在前面,導致數據不準確,解決辦法 在order by后面增加 nulls last

2.給查詢的結果增加序號 select ROW_NUMBER () OVER (ORDER BY fat desc nulls last) AS xuhao

補充:利用 PostgreSQL 實現對數據進行排名

一、需求:對以下用戶的積分進行排名計算

user_idnamescore
1john1000
2mike1200
3jelly1300
4brook1500
5nanny1200

需要知道 user_id = k 的用戶對應的積分排名

二、通過 PostgreSQL 的窗口函數實現

SELECT user_id, name, score, RANK() OVER (ORDER BY score DESC) FROM user;

user_idnamescorerank
4brook15001
3jelly12002
2mike13003
5nanny15003
1john12005

如要獲取排名 < 3 的用戶:

SELECT user_id, name, score, user_rank FROM (SELECT user_id, name, score, RANK() OVER (ORDER BY score DESC) AS user_rank FROM user) AS T WHERE user_rank < 3;

-- 注意子查詢在from中需要寫別名

user_idnamescorerank
4brook15001
3jelly12002

看完上述內容,你們對利用postgres 怎么對數據的排名進行查詢有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

威海市| 越西县| 和顺县| 江陵县| 博白县| 香格里拉县| 禹城市| 临沭县| 宜川县| 资溪县| 琼结县| 来安县| 册亨县| 景东| 瑞昌市| 民乐县| 青阳县| 龙川县| 游戏| 达州市| 留坝县| 宁明县| 新兴县| 凌云县| 德化县| 三门县| 汤原县| 万安县| 呼和浩特市| 杭锦旗| 民勤县| 天峨县| 辽阳市| 萨迦县| 青岛市| 天津市| 惠东县| 永新县| 古丈县| 馆陶县| 上思县|