- 쿼리실행순서 FROM -> WHERE -> GROUP BY -> (HAVING) -> SELECT -> ORDER BY
- GROUP BY가 SELECT 보다 먼저 실행 되지만, SELECT의 alias를 사용할 수 있다. (DB마다 약간은 차이가 있다. hql, mysql 가능 )
- GROUP BY, HAVING, ORDER BY에서 SELECT의 alias를 사용할 수 있다.
- WHERE절에서는 SELECT의 alias를 사용할 수 없다.실제 컬럼명만 사용가능하다. (서브쿼리에서는 사용가능)
- Case문은 select절, group by절에서 사용 가능.
SELECT
CASE
WHEN salary > 5000 THEN 'High'
ELSE 'Low'
END AS salary_category,
COUNT(*)
FROM employees
GROUP BY
CASE
WHEN salary > 5000 THEN 'High'
ELSE 'Low'
END;
'DB' 카테고리의 다른 글
Hive - HQL 함수 (0) | 2025.02.02 |
---|---|
SQL - begin, index, anti-join (0) | 2025.01.19 |
SQL 연산 순서 (0) | 2024.07.29 |
MySQL - HINT (0) | 2024.07.17 |
DB - Driving/ Driven Table, Optimizer (0) | 2024.07.10 |