Возможно ли добавить дополнительные строки к выбранному набору на основе значения поля?sql добавление дополнительных строк в каждую строку
У меня есть этот запрос:
WITH CTEDivisions AS
(
SELECT ....
)
SELECT
cnt,
Division
FROM CTEDivisions
который возвращает:
cnt Division
1 Sales
2 Marketing
1 Business
2 IT
etc...
Что мне нужно, это утверждение, что возвращает 3 дополнительные строки, когда cnt = 2
, как:
Division NewDivision
Sales Sales
Marketing Marketing - X
Marketing Marketing - Y
Marketing Marketing - Z
Business Business
IT IT - X
IT IT - Y
IT IT - Z
etc...
I мы искали способы сделать это и нашли некоторые возможные решения, используя cursor
и WHILE
, но они, похоже, не работают вместе с оператором CTE
.
Красивая, спасибо! – russds
Добро пожаловать. Ответ @Giorgi Nakeuri дает почти идентичный план выполнения. 'OUTER APPLY' в этом случае работает как' LEFT JOIN'. –