与其他 SQL 数据库不同,SQL Server 缺少显式的 OFFSET 子句。这在需要从特定偏移量获取结果而无需检索所有前导行时会带来挑战。为了克服这个限制,请考虑以下策略:
SQL Server 2005 及更高版本
利用 OVER() 子句:
<code class="language-sql">SELECT col1, col2 FROM ( SELECT col1, col2, ROW_NUMBER() OVER (ORDER BY ID) AS RowNum FROM MyTable ) AS MyDerivedTable WHERE MyDerivedTable.RowNum BETWEEN @startRow AND @endRow</code>
SQL Server 2000
高效的结果集分页:
使用高效的分页技术,例如使用计算游标或依赖于自定义分页机制。
请参考以下方法:
其他说明
以上是如何模拟 SQL Server 查询中的 OFFSET?的详细内容。更多信息请关注PHP中文网其他相关文章!