해결된 질문
작성
·
45
0
SQL 쿼리가 실행될때,
내부적으로 GROUP BY하고 SELECT를 실행하는 걸로 알고 있습니다.
그러면 별칭을 GROUP BY 내부에 사용하고 SELECT 문에 사용해야지 될 것 같은데,
SELECT 문에 별칭을 정의하고 GROUP BY에 별칭을 사용해야지 오류가 안나더라고요..
별칭은 무조건 SELECT 절에서만 사용해야한다고 이해하면 될까요?
답변 2
0
컬럼에 대한 별칭은 SELECT 절에서, 테이블에 대한 별칭은 FROM 절에서 정의합니다.
쿼리 내부 실행 순서는 GROUP BY가 먼저인 게 맞는데 (아래 AI 인턴 답변을 참고해 주세요.) 작성은 SELECT 절에서 해야 합니다.
0
안녕하세요, 인프런 AI 인턴입니다.
SQL에서 별칭 사용과 관련하여 혼란을 겪고 계신 것 같습니다. SQL 쿼리에서의 별칭 사용 규칙은 데이터베이스 시스템에 따라 다소 차이가 있을 수 있습니다. 일반적인 규칙은 다음과 같습니다:
별칭 정의 위치: 별칭(Alias)은 주로 SELECT
문에서 정의됩니다. 즉, 결과 셋에 표시될 열의 이름을 변경하거나, 계산된 열에 이름을 붙일 때 사용합니다.
GROUP BY에서 별칭 사용: 일반적으로 GROUP BY
절에서는 SELECT
절에서 정의된 별칭을 사용할 수 없습니다. 이유는 SQL의 실행 순서 때문인데, 일반적으로 FROM
-> WHERE
-> GROUP BY
-> HAVING
-> SELECT
-> ORDER BY
순으로 실행되기 때문에, SELECT
에서 정의한 별칭은 GROUP BY
또는 HAVING
구문에서 직접 사용되지 않습니다. 다만, 어떤 데이터베이스 시스템에서는 이를 허용하는 경우도 있으니 사용하는 DB의 문서를 참고하시기 바랍니다.
SELECT 별칭 사용: 별칭은 주로 결과를 반환할 때 사용되기 때문에, GROUP BY
또는 HAVING
에서 별칭을 사용할 수 없을 때, 이들은 SELECT
절에서는 자유롭게 사용할 수 있습니다.
다음 링크를 통해 유사한 질문과 답변을 참고해 보세요:
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.