Postgres分頁的SQL語句寫法

小樊
88
2024-09-11 07:07:33
欄目: 云計(jì)算

在PostgreSQL中,要實(shí)現(xiàn)分頁功能,可以使用LIMITOFFSET關(guān)鍵字

SELECT * FROM table_name
ORDER BY column_name
LIMIT page_size
OFFSET (page_number - 1) * page_size;

其中:

  • table_name:要查詢的表名。
  • column_name:排序依據(jù)的列名。
  • page_size:每頁顯示的記錄數(shù)。
  • page_number:當(dāng)前頁碼。注意,頁碼是從1開始的,而不是從0開始。

例如,假設(shè)我們有一個(gè)名為employees的表,包含idnamesalary列。我們想要按照salary列降序排列,每頁顯示10條記錄,獲取第2頁的數(shù)據(jù),可以使用以下SQL語句:

SELECT * FROM employees
ORDER BY salary DESC
LIMIT 10
OFFSET (2 - 1) * 10;

這將返回第2頁的數(shù)據(jù),即第11條到第20條記錄。

0