溫馨提示×

溫馨提示×

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

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

postgresql獲取每組前幾條記錄的方法

發(fā)布時間:2020-07-15 16:27:36 來源:億速云 閱讀:627 作者:清晨 欄目:編程語言

這篇文章將為大家詳細講解有關postgresql獲取每組前幾條記錄的方法,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

postgresql獲取每組前幾條記錄:

示例

表結(jié)構(gòu)如下:

               Table "ytt.t1"  
 Column |         Type          | Modifiers   
--------+-----------------------+-----------  
 i_name | character varying(10) | not null  
 rank   | integer               | not null

模擬了20條數(shù)據(jù)來做演示:

t_girl=# select * from t1 order by i_name; 
 i_name  | rank   
---------+------  
 Charlie |   12  
 Charlie |   12  
 Charlie |   13  
 Charlie |   10  
 Charlie |   11  
 Lily       |    6  
 Lily       |    7  
 Lily        |    7  
 Lily       |    6  
 Lily       |    5  
 Lily    |    7  
 Lily    |    4  
 Lucy    |    1  
 Lucy    |    2  
 Lucy    |    2  
 Ytt     |   14  
 Ytt     |   15  
 Ytt     |   14  
 Ytt     |   14  
 Ytt     |   15  
(20 rows)

按照人名分組,每組取3條記錄:

select * 
from (select i_name, rank, row_number() over(partition by i_name) as row from t1) t
where row < =3

SELECT 語句用于從數(shù)據(jù)庫中選取數(shù)據(jù)。

結(jié)果被存儲在一個結(jié)果表中,稱為結(jié)果集。

SQL SELECT 語法

SELECT column_name,column_name
FROM table_name;

SELECT * FROM table_name;

SQL WHERE 子句

WHERE 子句用于提取那些滿足指定條件的記錄。

SQL WHERE 語法

SELECT column_name,column_name
FROM table_name
WHERE column_name operator value;

關于postgresql獲取每組前幾條記錄的方法就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節(jié)

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

AI