概述
按位置访问特定数据库表行是一项频繁的任务。 尽管各个数据库系统 (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中文网其他相关文章!