Найти общее количество всех связанных записей в дочерних записях с использованием SQL Server - PullRequest
0 голосов
/ 29 декабря 2011

Я пытаюсь найти количество записей в связанной таблице, однако родительская таблица содержит рекурсивное отношение, и мне кажется, что я могу получить только связанный счет для записей, которые находятся внизу дерева, и мне нужно общее количество всех записей, связанных с текущей записью, а также ее детей.

Я пытался использовать обычные табличные выражения, чтобы сделать это, однако всякий раз, когда я добавляю функцию count в запрос, я получаю сообщение о том, что функции GROUP BY, HAVING или агрегатные не разрешены в рекурсивной части рекурсивного общего табличное выражение ».

Я довольно долго ломал голову над этим и, возможно, в конечном итоге напишу для этого функцию C #, но мне было интересно, есть ли у кого-нибудь идеи о том, как добиться этого в SQL.

Спасибо

1 Ответ

1 голос
/ 29 декабря 2011

Попробуйте select count(*) from cte, где CTE определяет рекурсивное отношение, но не пытается выполнить какую-либо агрегацию.

...