在 MySQL 中我们使用LIMIT,而在 sql server 中我们必须使用TOP而不是LIMIT,但我们可以LIMIT这样使用:
Limit X, Y其中 X 是起点,Y 是持续时间。
现在我怎么能TOP像那个例子一样使用?
在 MySQL 中我们使用LIMIT,而在 sql server 中我们必须使用TOP而不是LIMIT,但我们可以LIMIT这样使用:
Limit X, Y其中 X 是起点,Y 是持续时间。
现在我怎么能TOP像那个例子一样使用?
您可以使用 ROW_NUMBER() 函数和 CTE(公用表表达式)
with cte as(
select *,ROW_NUMBER() over (order by col1) as rownumber from <table>)
select * from cte where rownumber between x and y
你不能在 SQL Server 2012 之前添加FETCH..OFFSET
所以你需要使用 ROW_NUMBER 函数来“分页”。例子: