0
我有这个疑问,几乎让我想:TSQL排序依据偏移问题
SET NOCOUNT ON
SELECT D.Id from MtdMdl_HierarchicalObject D
where D.Name LIKE '%R%'
SELECT B.* FROM MtdMdl_Item A
OUTER apply (SELECT * FROM MtdMdl_Item as C where a.Id=c.Id) as B
WHERE A.Owner in
(
SELECT D.Id from MtdMdl_HierarchicalObject D
where D.Name LIKE '%R%'
)
order by Id offset 0 ROWS FETCH NEXT 3 ROWS ONLY
GO
不幸的是我想的订单来自序号获取新的每个对象上应用3行通过返回:
SELECT D.Id from MtdMdl_HierarchicalObject D
where D.Name LIKE '%R%'
因为当前脚本对前一个语句的整个结果应用了Paging。
我猜OP希望新的3行对每个数据库往返,简单的把一个顶生病返回相同3排。如果我的猜测是正确的,那么生病需要保持并传递某种从应用程序到查询的StartFromRow_N参数。 – jean
@jean ID OFFSET 0意味着OP不会跳过任何行。所以使用TOP子句而不是OFFSET会更有意义。 –
这是我的错,在这种情况下,偏移量为0,但真正的意图是使用分页,所以我可以有非零偏移量。 – Nock