SQL實現分頁查詢的方法主要有兩種:
SELECT * FROM table_name LIMIT offset, limit;
其中,offset表示偏移量,limit表示每頁的數據量。例如,如果每頁顯示10條數據,要查詢第3頁的數據,可以使用以下語句:
SELECT * FROM table_name LIMIT 20, 10;
這將返回從第21條記錄開始的10條記錄。
SELECT * FROM (
SELECT *, ROW_NUMBER() OVER (ORDER BY column_name) AS row_num FROM table_name
) AS subquery
WHERE row_num BETWEEN offset AND offset + limit - 1;
其中,column_name表示用于排序的列名,offset和limit的含義與前述方法相同。例如,要查詢第3頁的數據,可以使用以下語句:
SELECT * FROM (
SELECT *, ROW_NUMBER() OVER (ORDER BY column_name) AS row_num FROM table_name
) AS subquery
WHERE row_num BETWEEN 20 AND 29;
這將返回第21條到第30條記錄。
需要注意的是,具體使用哪種方法取決于所使用的數據庫系統的支持程度,一些數據庫系統可能只支持其中一種方法。