Na przykład:
With DependencedIncidents AS
(
SELECT INC.[RecTime],INC.[SQL] AS [str] FROM
(
SELECT A.[RecTime] As [RecTime],X.[SQL] As [SQL] FROM [EventView] AS A
CROSS JOIN [Incident] AS X
WHERE
patindex('%' + A.[Col] + '%', X.[SQL]) > 0
) AS INC
)
With lalala AS
(
SELECT INC.[RecTime],INC.[SQL] AS [str] FROM
(
SELECT A.[RecTime] As [RecTime],X.[SQL] As [SQL] FROM [EventView] AS A
CROSS JOIN [Incident] AS X
WHERE
patindex('%' + A.[Col] + '%', X.[SQL]) > 0
) AS INC
)
... nie działa. „Błąd w pobliżu za”.
Chcę też użyć najpierw z wewnątrz drugiego z. Czy to prawda, czy muszę używać tabel tymczasowych?
sql
tsql
sql-server-2008
cnd
źródło
źródło
[ ,...n ]
.Odpowiedzi:
Próbować:
I tak, możesz odwoływać się do wspólnego wyrażenia tabelowego w definicji wspólnego wyrażenia tabelowego. Nawet rekurencyjnie. Co prowadzi do bardzo schludnych sztuczek .
źródło
with
ponownie słowaTak - po prostu zrób to w ten sposób:
Nie musisz powtarzać
WITH
słowa kluczowegoźródło
lalala
) może użyć dowolnego zdefiniowanego wcześniej CTE - ale wcześniejszy nie może użyć CTE, który zostanie zdefiniowany dopiero później ...