時間:2024-02-05 11:03作者:下載吧人氣:14
🍺不聞不若聞之,聞之不若見之,見之不若知之,知之不若行之。學(xué)至于行之而止矣。——荀子
大家好!我是只談技術(shù)不剪發(fā)的 Tony 老師。
在使用 SQL 語句實現(xiàn)分頁查詢時,我們需要知道一些額外的參數(shù)信息,例如查詢返回的總行數(shù)、當(dāng)前所在的頁數(shù)、最后一頁的頁數(shù)等。在傳統(tǒng)的實現(xiàn)方法中我們需要執(zhí)行額外的查詢語句獲得這些信息,本文介紹一種只需要一個查詢語句就可以返回所有數(shù)據(jù)的方法,也就是通過 SQL 窗口函數(shù)實現(xiàn)高效的分頁查詢功能。
本文使用的示例表和數(shù)據(jù)可以這里下載。
在 SQL 中實現(xiàn)分頁查詢的傳統(tǒng)方法就是利用標(biāo)準(zhǔn)的 OFFSET … FETCH 語句或者許多數(shù)據(jù)庫支持的 LIMIT … OFFSET 語句,例如:
— Oracle、SQL Server、PostgreSQL
SELECT emp_name, sex, email
FROM employee
ORDER BY emp_id
OFFSET 10 ROWS FETCH NEXT 10 ROWS ONLY;
— MySQL、PostgreSQL、SQLite
SELECT emp_name, sex, email
FROM employee
ORDER BY emp_id
LIMIT 10 OFFSET 10;
網(wǎng)友評論