У меня очень жирное общее табличное выражение, которое включает номера строк, так что я могу вернуть вычисленный набор результатов. Я также хочу вернуть общее количество записей, которые соответствуют запросу, прежде чем я нарисую результирующий набор.
with recs as (select *, row_number() over (order by id) as rownum from ......)
select * from recs where rownum between @a and @b .... select count(*) from recs
Очевидно, мой запрос выше неоднозначен, но это просто для иллюстрации моей точки. Мне нужна страница результатов И общее количество совпадений. Как мне это сделать без необходимости копировать и вставлять всю 20+ строку CTE?