반응형
여러 개의 "with"를 사용할 수 있습니까?
예를 들어 다음과 같습니다.
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
)
...일하지 않는다."Error near With" 입니다.
그리고 먼저 안쪽과 함께 사용하고 싶습니다.진짜야? 아니면 임시 테이블을 사용해야 해?
시험:
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
),
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
)
또한 공통 테이블 표현식 정의 내에서 공통 테이블 표현식을 참조할 수 있습니다.심지어 재귀적으로도.아주 깔끔한 속임수로 이어지죠
네, 그냥 이렇게 하면 됩니다.
WITH DependencedIncidents AS
(
....
),
lalala AS
(
....
)
반복할 필요는 없습니다.WITH
키워드
이 문제는 임시 테이블을 사용하여 해결할 수 있습니다.
WITH DependencedIncidents AS
(
....
)
select * INTO #TempTable from DependencedIncidents
with lalala AS
(
....
)
select * from lalala
또한 두 번째를 와 함께 쓸 수도 있습니다.두 번째를 "와 함께"로 쓸 수도 있습니다.
모든 작업을 완료한 후 마지막 반환 값 "select * from lalala"를 실행해야 합니다.
언급URL : https://stackoverflow.com/questions/5375634/can-i-use-multiple-with
반응형
'sourcecode' 카테고리의 다른 글
Bash에서 'for' 루프를 어떻게 쓰죠? (0) | 2023.04.14 |
---|---|
Dapper ORM을 사용하여 * FROM X WHERE ID IN (...)를 선택합니다. (0) | 2023.04.14 |
git root 디렉토리를 하나의 명령어로 얻을 수 있는 방법이 있나요? (0) | 2023.04.14 |
Excel 커스텀 함수 툴팁 탐색 (0) | 2023.04.14 |
ASP.Net 또는 WPF(C#) (0) | 2023.04.14 |