■ Case
조건 목록을 평가하고 가능한 여러 결과 식 중 하나를 반환합니다.
CASE 식에는 두 가지 형식이 있습니다.
- 단순 CASE 식은 특정 식을 일련의 단순 식과 비교하여 결과를 결정합니다.
- 검색된 CASE 식은 일련의 부울 식을 평가하여 결과를 결정합니다.
두 가지 형식 모두 선택 사항인 ELSE 인수를 지원합니다.
CASE는 유효한 식이 허용되는 모든 문 및 절에 사용할 수 있습니다. 예를 들어 SELECT, UPDATE, DELETE 및 SET과 같은 문과 select_list, IN, WHERE, ORDER BY 및 HAVING과 같은 절에 CASE를 사용할 수 있습니다.
여기서 간단한 팁은 Where 절과 Having 절에 Case를 사용할 수 있다는 것이다.
ex>
--Having 절 Case 사용
USE AdventureWorks;
GO
SELECT Title, MAX(ph1.Rate)AS MaximumRate
FROM HumanResources.Employee AS e
JOIN HumanResources.EmployeePayHistory AS ph1 ON e.EmployeeID = ph1.EmployeeID
GROUP BY Title
HAVING (MAX(CASE WHEN Gender = 'M'
THEN ph1.Rate
ELSE NULL END) > 40.00
OR MAX(CASE WHEN Gender = 'F'
THEN ph1.Rate
ELSE NULL END) > 42.00)
ORDER BY MaximumRate DESC;
By 김정중
'IT테크 > DB' 카테고리의 다른 글
[MS-SQL]프로시저, 테이블명 검색 (0) | 2022.12.12 |
---|---|
MS-SQL 날짜 형태 변환함수 정리 (0) | 2019.12.11 |
MS-SQL 날짜함수 형식 변환 (0) | 2019.12.06 |
SQL Admin Tip (0) | 2009.12.06 |
select top 10 Procedure (0) | 2009.12.06 |