단독 WITH SELECT는 성공하지만 CREATE VIEW에서 Could not resolve table reference가 발생한다.
원본에는 해결됐다는 통보만 있고 최종 SQL은 없다. 이 문서는 공식 CREATE VIEW 문법에 맞춘 추가 우회이며 정확한 원본 해결 SQL을 복원한 것은 아니다.
CREATE VIEW AS 뒤에 WITH를 직접 배치하고 CTE의 scope와 원본 테이블 이름을 명시한다.
확인 수준: 추가 조사 해법 · 해당 케이스 적용 결과 미확인
적용 조건: <...>와 예시 DB·테이블·경로·수치는 실제 확인값으로 바꾼다. 명령과 메뉴는 참고 문서를 바탕으로 보강한 예시이며 대상 시스템에서 실행하지 않았다. 버전·원인에 따른 분기와 남은 확인 사항은 아래에 명시한다.
CREATE VIEW db.cte_test AS
WITH source_rows AS (
SELECT id, payload FROM db.source_table
)
SELECT id, payload FROM source_rows;
SELECT * FROM db.cte_test LIMIT 10;
SHOW CREATE TABLE db.cte_test;
AS (WITH ... SELECT ...) 전체를 감싼 괄호를 제거한 문법으로 재현한다.독립 SELECT와 VIEW 조회의 schema·결과가 일치하고 새 세션에서도 조회되는지 확인한다.