뽀미의 개발노트

mysql에서 WITH AS 자꾸 오류 났던 이유... 본문

Trouble_Shooting

mysql에서 WITH AS 자꾸 오류 났던 이유...

산타는 뽀미 2023. 5. 28. 23:43

다중조인이나 서브쿼리는 너무 무겁고 느려진다고 해서 WITH AS로 여러 테이블 묶으려고 하는데

이상하게 계속 오류가 나는것!!!!

WITH GS AS(
	SELECT G.*, COUNT(M.classId) AS studentNum
	FROM `group` AS G
	LEFT JOIN `member` AS M
	ON G.id = M.classId
	AND M.authLevel = 2
	GROUP BY G.id;
	)
SELECT GS.*, T.name AS teacherName
FROM GS
LEFT JOIN `member` AS T
ON GS.groupTeacherId = T.id;

잘 쓴것 같은데 자꾸 틀린단 말이지.. 그래서 오류 메세지를 잘 봤더니

WITH AS 괄호 안에는 ;를 쓰면 안 되는 거였다;;;;;

WITH GS AS(
	SELECT G.*, COUNT(M.classId) AS studentNum
	FROM `group` AS G
	LEFT JOIN `member` AS M
	ON G.id = M.classId
	AND M.authLevel = 2
	GROUP BY G.id
	)
SELECT GS.*, T.name AS teacherName
FROM GS
LEFT JOIN `member` AS T
ON GS.groupTeacherId = T.id;

그 땀(;)만 빼니까 바로 잘 작동됨...;;;;;;

아니 이것 때문에 그냥 다중조인 사용한 적도 많았는데......

나는 의외로 오류 메세지를 잘 안 읽어서 자꾸만 실수하는 걸지도...?

정신차리자!!!!