可以使用 OFFSET-FETCH 子句来取中间的 10 条记录。

例如,假设你有一个名为 customers 的表,你可以使用以下查询来获取中间的 10 条记录:

SELECT *
FROM customers
ORDER BY customer_id
OFFSET ((SELECT COUNT(*) FROM customers) / 2) - 5 ROWS
FETCH NEXT 10 ROWS ONLY;

这个查询假设你想要获取表中间的 10 条记录,即第 (n/2-5) 条记录到第 (n/2+4) 条记录,其中 n 是表中记录的总数。

首先,使用 COUNT(*) 函数获取记录总数。然后,使用 OFFSET 子句来跳过前面的 (n/2-5) 条记录,FETCH 子句来获取接下来的 10 条记录。

注意,这个查询假设表中记录的数量是偶数。如果表中记录的数量是奇数,你可能需要调整 OFFSET 子句的计算方式。

SQL Server 获取中间 10 条记录的最佳方法

原文地址: https://www.cveoy.top/t/topic/kULy 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录