[sql] WHERE 절에서 조건부 함수 사용하기

WHERE 절에서 조건부 함수 사용하기

SQL에서 WHERE 절을 사용하여 특정 조건을 만족하는 데이터를 필터링할 수 있습니다. 때로는 WHERE 절 내에서 조건부 함수를 사용하여 보다 복잡한 조건을 처리해야 할 때가 있습니다.

예를 들어, 다음과 같은 상황을 가정해 봅시다. “employees” 테이블에서 급여가 30,000 이상이고 직급이 ‘매니저’인 직원들의 정보를 조회하고 싶다고 합시다. 이때, WHERE 절 내에서 조건부 함수인 CASE 문을 사용해 해당 조건을 처리할 수 있습니다.

다음은 이러한 상황을 다루기 위해 사용할 수 있는 SQL 쿼리의 예제입니다.

SELECT *
FROM employees
WHERE salary >= 30000
AND position = 
    CASE 
        WHEN position = '매니저' THEN '매니저'
        ELSE position 
    END;

위의 예제에서 CASE 문을 사용하여 직급이 ‘매니저’인 경우에만 해당 조건을 적용하고, 그 외의 경우에는 직급에 대한 추가적인 조건 없이 검색하도록 설정했습니다.

조건부 함수를 WHERE 절에서 사용하면 데이터베이스에서 보다 유연하고 효과적인 데이터 필터링을 수행할 수 있습니다. ```