• 카테고리

    질문 & 답변
  • 세부 분야

    데이터 분석

  • 해결 여부

    미해결

질문!!

23.01.02 01:14 작성 조회수 219

0

/* SELECT salary*months as earnings

, count(*)

FROM Employee

GROUP BY earnings

ORDER BY earnings DESC

LIMIT 1

*/

위 코드에서 질문이있습니다

Alias 사용에 관한 질문인데요

sql 문법 실행 순서를 보면 group by 다음에

select 문이 실행이 되는것으로 알고있는데

group by에 earnings을 쓰면 애초에 정의되어있지않은 컬럼(earnings)이기때문에 오류가 뜨는게 맞지않나요? 오류가 안뜨고 제대로 작동이 되어서

제가 무엇을 잘못알고있는지 헷갈려서 질문남깁니다!

답변 1

답변을 작성해보세요.

0

보통은 SELECT 절의 alias를 WHERE절 혹은 HAVING 절에서 사용할 수 없지만, MySQL에서는 사용이 가능합니다. 관련 웹사이트를 첨부하니 참고 부탁드립니다 :)

1. [MySQL] B.3.4.4 Problems with Column Aliases

2. [stackoverflow] Using alias in the WHERE and HAVING statements?