HackerRank - type of triangle 정ㅇ답
SELECT
CASE
WHEN A = B AND B = C THEN 'Equilateral'
WHEN A = B OR B = C OR A = C THEN 'Isosceles'
WHEN A + B <= C OR B + C <= A OR A + C <= B THEN 'Not A Triangle'
ELSE 'Scalene'
END
FROM TRIANGLES;
오라클 데이터베이스에서 CASE WHEN 표현식은 조건에 따라 다른 결과를 반환하는데 사용됩니다. 이것은 주로 SELECT 문과 함께 사용되어 데이터를 변환하거나 필터링하는 데 유용합니다. CASE WHEN 표현식은 다음과 같은 일반적인 구문을 가집니다:
CASE
WHEN 조건1 THEN 결과1
WHEN 조건2 THEN 결과2
...
ELSE 기본값
END
- CASE 키워드로 시작하고, END 키워드로 종료됩니다.
- WHEN 키워드를 사용하여 조건을 정의하고, 해당 조건이 참인 경우에는 해당 결과를 반환합니다.
- 여러 WHEN 절을 사용하여 다양한 조건에 대한 결과를 정의할 수 있습니다.
- ELSE 키워드를 사용하여 어떤 조건에도 해당하지 않을 때 반환할 기본값을 지정할 수 있습니다. 이 부분은 선택 사항입니다.
예를 들어, employees 테이블에서 급여에 따라 직원을 분류하는 쿼리를 작성한다고 가정해 보겠습니다:
SELECT
employee_id,
first_name,
last_name,
CASE
WHEN salary < 30000 THEN 'Low Salary'
WHEN salary >= 30000 AND salary < 60000 THEN 'Medium Salary'
WHEN salary >= 60000 THEN 'High Salary'
ELSE 'Unknown'
END AS salary_category
FROM employees;
위 쿼리에서는 급여에 따라 직원을 "Low Salary", "Medium Salary", "High Salary" 또는 "Unknown" 카테고리로 분류합니다. CASE WHEN 표현식을 사용하여 조건에 따라 다른 결과를 반환할 수 있습니다.
이렇게 하면 조건에 따라 데이터를 가공하고 분류할 때 매우 유용하며, 복잡한 데이터 변환 및 필터링 작업에 활용됩니다.
'컴퓨터 과학 > 데이터베이스' 카테고리의 다른 글
NULL 값 처리하기 (NVL 과 COALESCE 비교) (0) | 2023.10.08 |
---|---|
with문 사용방법 (1) | 2023.10.07 |
HackerRank - SQL문제풀이 (0) | 2023.10.06 |
Like와 Regexp_Like 차이 (1) | 2023.10.06 |
Mappers and Reducers 구현 (Map Reduce Advanced - Count number of friends) (0) | 2023.10.05 |