PostgreSQL / SQL Basics / 1.10 Utility Operators
1.10Utility Operators
GREATEST, LEAST와 CASE의 사용법
값들 중에서 최대 또는 최소를 고르거나, 조건에 따라 값을 다르게 표시할 수 있는 SQL 함수들이 있다.
GREATEST() - 가장 큰 값
sqlSELECT GREATEST(20, 10, 30);
- 예를 들어, $30과 (무게 * $2) 중 더 비싼 값을 구해서 운송비를 구한다거나 할 때 쓸 수 있다.
sqlSELECT name, weight, GREATEST(30, 2 * weight) FROM products;
LEAST() - 가장 작은 값
sqlSELECT LEAST(1, 20, 50, 100);
- 예를 들어, 할인 가격을 가격의 50% 또는 400달러 중 더 적은 금액으로 설정할 때.
sqlSELECT name, price, LEAST(price * 0.5, 400) FROM products;
CASE - 조건에 따라 결과 다르게 분류하기
sqlSELECT name, price, CASE WHEN price > 600 THEN 'high' WHEN price > 300 THEN 'medium' ELSE 'cheap' END FROM products;
- 순서대로 조건을 검사하고, 처음으로 만족한 조건의 결과값을 출력한다.
ELSE
는 아무 조건도 만족하지 않을때 출력값이다.