-
카테고리
-
세부 분야
데이터 분석
-
해결 여부
해결됨
쿼리문의 실행순서에 대한 문의
20.07.28 19:42 작성 조회수 280
5
SELECT CASE
WHEN CategoryID = 1 THEN '음료'
WHEN CategoryID = 2 THEN '소스'
ELSE '이외'
END AS new_category
, AVG(Price)
FROM Products
GROUP BY new_category;
저는 SELECT문이 GROUP BY문 이후에 실행되는 것으로 알고 있는데, 위 쿼리문의 GROUP BY에서 어떻게 SELECT문의 alias를 사용할 수 있는지 궁금합니다.
답변을 작성해보세요.
0
이보민
지식공유자2020.07.31
안녕하세요 Alias45님
표준 SQL 구문의 실행 순서와 프로덕트들에서 실제 사용되는 SQL 인터프리터들의 실행순서가 조금씩 달라서 헷갈리실 수 있을 것 같네요.
말씀해주신 대로 Standard SQL 쿼리의 경우 GROUP BY는 SELECT 구문 이후에 실행되기 때문에 SELECT 구문에서 사용한 Alias를 가져다 쓸 수 없지만, MYSQL의 경우에는 GROUP BY에서도 SELECT 구문의 Alias가 사용 될 수 있습니다.
자세한 사항은 공식 문서와 관련 stackoverflow 문답 첨부드리니 참고해주세요 :)
답변 1