프로그램개발/DB(MySQL,MariaDB,MongoDB)
[MySQL & MariaDB] Alias 별칭 부여시 조건문에서 사용하는 방법
크레도스
2021. 4. 23. 16:50
출처 : [MySQL & MariaDB] Alias 별칭 부여시 조건문에서 사용하는 방법 (tistory.com)
[MySQL & MariaDB] Alias 별칭 부여시 조건문에서 사용하는 방법
안녕하세요. 본 포스팅은 주관적으로 작성되며, 틀린 정보가 있을시에 따끔한 충고 부탁드리겠습니다. 감사합니다. 내용 : 컬럼명 alias 사용 시 해당 컬럼을 조건문으로 사용하기위한 방법
moon-dev-blog.tistory.com
안녕하세요. 본 포스팅은 주관적으로 작성되며, 틀린 정보가 있을시에 따끔한 충고 부탁드리겠습니다. 감사합니다.
내용 : 컬럼명 alias 사용 시 해당 컬럼을 조건문으로 사용하기위한 방법입니다.
쿼리 작성 시 일반적으로 별칭(AS) 사용 방법은 이렇습니다.
SELECT COUNT(*) AS cnt FROM student;
해당 쿼리를 실행하면 전체 카운트가 별칭 cnt컬럼의 값으로 표기가 됩니다.
하지만 WHERE 조건문에 alias 값을 통한 조회는 불가능 합니다.
그 이유는 SQL 구문 실행 순서와 관련이 되어 있는데
FROM -> WHERE -> GROUP BY -> HAVING -> SELECT -> ORDER BY
의 순서를 기반으로 실행이 되며, 이때 alias의 경우 GROUP BY 절 이후 부터 인식이 가능하기 때문입니다.
즉 alias의 값을 사용하기 위해선 GROUP BY 이후의 조건구문인 HAVING을 이용한 쿼리를 사용해야 합니다.
SELECT COUNT(*) AS cnt FROM notice HAVING cnt >= 5