Вопросы по теме 'common-table-expression'

Как получить последнюю запись, созданную в рекурсивном CTE?
В приведенном ниже коде я использую рекурсивное выражение CTE (Common Table Expression) в SQL Server 2005, чтобы попытаться найти родительский элемент верхнего уровня базовой иерархической структуры. Правило этой иерархии состоит в том, что у каждого...
5907 просмотров

Linq-to-Sql: рекурсивное получение дочерних элементов
У меня есть таблица комментариев, в которой есть CommentID и ParentCommentID. Я пытаюсь получить список всех дочерних элементов комментария. Это то, что у меня есть, пока не тестировал. private List<int> searchedCommentIDs = new...
5075 просмотров

CTE для обхода иерархии?
Я могу найти всех дочерних элементов заданной записи в иерархической модели данных (см. код ниже), но я не уверен, как выполнить резервное копирование по цепочке «родительский/дочерний» с заданным идентификатором дочернего элемента. Может ли...
7942 просмотров

Subsonic 3.0 Simplerepository: как выполнить простой sql (CTE)?
Я пробовал Subsonic, но у меня возникла проблема, когда я хотел бы иметь возможность выполнить CTE в направлении SimpleRepository и иметь возможность вернуть свои POCO из этого запроса. Есть ли способ выполнить прямой SQL в Subsonic 3.0 при...
816 просмотров
schedule 04.07.2022

Использование предложения With в SQL Server
Как работает предложение with в SQL Server? Действительно ли это дает мне некоторый прирост производительности или просто помогает делать более читаемые сценарии? Когда правильно его использовать? Что вы должны знать о предложении with ,...
21491 просмотров
schedule 12.04.2023

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

Построение поддерева с коррелированным агрегатом
Прошу прощения за расплывчатое название. Я не мог придумать, как лучше всего резюмировать проблему. У меня есть иерархическая таблица (например, ID int, ParentID int ), и мне нужно сгенерировать поддерево для ID . Это тривиально делается с...
713 просмотров

Моделирование рекурсии CTE в C #
Скажем, у вас есть следующий CTE, который возвращает уровень некоторых данных дерева (модель смежности), которые у меня есть (взяты из Иерархические данные в Linq - параметры и производительность ): WITH hierarchy_cte(id, parent_id, data, lvl)...
3986 просмотров

Рекурсия CTE с несколькими условиями SQL
В базе данных у меня есть 2 следующих фрагмента информации для каждого идентификатора. Компания, которая их контролирует, и компании, в которых они имеют небольшой контроль. Что-то вроде строк, 2 таблицы (игнорируя некоторые уникальные...
1274 просмотров

SQL, чтобы получить среднее значение за день из общего месяца
У меня есть таблица, в которой перечислены итоги месяца (цели) person total month ----------- --------------------- ----------- 1001 114.00 201005 1001 120.00 201006...
1273 просмотров
schedule 10.06.2024

Альтернативы рекурсивному CTE внутри коррелированного подзапроса «существует»?
У меня есть ситуация, когда мне нужно иметь возможность видеть, находится ли данный человек в иерархии пользователя/менеджера. Мне нужно иметь возможность сделать это для набора пользователей в соответствии с набором правил (не беспокойтесь об...
4673 просмотров

Потоковая передача рекурсивных CTE SQL Server 2008
У меня есть набор данных из таблицы ( TableA ), которая относится к себе через TableB . Родители в TableA имеют детей в TableA . У этих детей тоже могут быть дети. Здесь ничего удивительного. У меня есть набор строк верхнего уровня из...
198 просмотров

Рекурсивный CTE с порядком
Я работаю с иерархическими данными и использую рекурсивный CTE для перечисления таких элементов: Eletronics Televisions Tube LCD Plasma Portable Electronic MP3 Players Flash CD Player...
2401 просмотров

CTE для возврата всех элементов в иерархии
У меня есть таблица с рекурсивной иерархией (т.е. ID, ParentID). Для любого элемента в этой иерархии я хочу иметь возможность вернуть список всего ВВЕРХ И ВНИЗ по иерархии вместе с уровнем для каждой строки. Предположим, что у родителя может быть...
2871 просмотров

как выбрать только строку с максимальной последовательностью без использования подзапроса?
Я пытаюсь выбрать только строку с наивысшей последовательностью для каждого идентификатора. ID | Seq | Age ------------------- A 1 20 A 2 30 B 1 25 B 2 32 B 3 44 B 4...
32403 просмотров

CTE с группой Возвращая те же результаты, что и базовый запрос
Я пытаюсь выбрать количество обзоров продуктов по рейтингу, где рейтинг может быть от 0 до 5. Следующий базовый выбор работает, но не дает подсчет оценок, которых нет в базовой таблице. SELECT Rating, COUNT(*) AS 'Reviews' FROM ProductReviews...
1851 просмотров
schedule 02.05.2024

Рекурсивный CTE с дополнительными условиями EXISTS?
У меня есть ситуация, когда мне нужно иметь возможность видеть, находится ли данный человек в иерархии пользователя/менеджера. У меня есть следующая структура таблицы: UserId UserName ManagerId У меня есть 2 идентификатора: UserId (скажем, 5) и...
1415 просмотров

SQL Server — использование предложения WITH в инструкции INSERT
Мне было интересно, возможно ли это. У меня есть существующий запрос, который использует предложение WITH для применения некоторых агрегированных данных к запросу SELECT следующим образом: (значительно упрощено) ;WITH alias (y,z) AS (...
62326 просмотров

Как мне получить среднесуточное значение за один месяц?
Как мне вернуть среднесуточное значение за целый месяц? select count(distinct people_id) from #enrollments_PreviousMonth where program_modifier_id = 'E1AA7A36-0500-4BAE-A0AA-D9E0BC91A6F3' AND actual_date between '4/1/13' and '5/1/13' Выше...
1582 просмотров
schedule 16.02.2023

Как ускорить рекурсивный CTE
Учитывая следующий рекурсивный CTE (немного упрощенный для моего примера): WITH myCTE (sort, parentid, myid, level, somedata) AS ( -- Anchor member definition SELECT CAST(ROW_NUMBER() OVER(ORDER BY o.myid) as decimal(38, 20)) as...
2764 просмотров