概述
按位置存取特定資料庫表行是一項頻繁的任務。 儘管各個資料庫系統 (DBMS) 提供了自己的方法,但有幾種方法可以跨不同的資料庫平台工作。
跨 DBMS 技術
OFFSET-LIMIT 子句:
SELECT ... LIMIT y OFFSET x
視窗函數:
<code class="language-sql"> SELECT * FROM ( SELECT ROW_NUMBER() OVER (ORDER BY key ASC) AS rownumber, columns FROM tablename ) AS foo WHERE rownumber = n</code>
DBMS 特定解
SQL Server: 視窗函數方法(如上所述)適用。
MySQL: OFFSET-LIMIT
子句(如上所述)是首選方法。
PostgreSQL: OFFSET-LIMIT
子句和視窗函數(適用於 8.4 及更高版本)都適用。
SQLite: 3.25.0 及更高版本中支援 OFFSET-LIMIT
和視窗函數。
Oracle: 視窗函數方法(如前所述)是標準方法。
以上是無論 DBMS 如何,如何從資料庫表中檢索第 N 行?的詳細內容。更多資訊請關注PHP中文網其他相關文章!