目前它正在工作,但我希望 xml 包含没有限制的总行数。
SET @query_result = (SELECT ID,Title
FROM
(
SELECT items.id AS "ID",items.title AS "Title" ,
ROW_NUMBER() OVER(ORDER BY date_added DESC) AS RowNum
FROM [cars]
JOIN [items] ON items.id=cars.item_id
WHERE
rejected = 0
)AS MyDerivedTable
WHERE
MyDerivedTable.RowNum BETWEEN (@page-1)*2+1 AND (@page*2)
FOR XML PATH('car'),ROOT('items')
)
这返回
<items>
<car>
<ID>37</ID>
<Title>Used 2004 Chevrolet Corvette Convertible</Title>
</car>
</items>
我想
<items>
<car>
<ID>37</ID>
<Title>Used 2004 Chevrolet Corvette Convertible</Title>
<Count>6</Count>
</car>
</items>
虽然 Count 不是返回的行数,而是与查询匹配的总行数。或者,如果我的问题对任何人来说都难以理解,我正在寻找 FOUND_ROWS() 的 MSSQL 替代方案;这个问题@ SQL Count total number of rows while using LIMIT试图回答同样的问题,但我想要一个解决方案是 MSSQL。