본문 바로가기
HackerRank

Type of Triangle(SQL)

by Doromi 2023. 10. 14.
728x90
반응형

 TRIANGLES 테이블에서 각 레코드의 세 변의 길이를 기반으로 삼각형의 유형을 식별하고 해당 결과를 출력하는 것을 목표로 합니다. 각 레코드에 대해 다음 중 하나의 문장을 출력합니다:

Equilateral: 세 변의 길이가 모두 동일한 삼각형입니다.
Isosceles: 두 변의 길이가 같은 삼각형입니다.
Scalene: 세 변의 길이가 모두 다른 삼각형입니다.
Not A Triangle: 주어진 A, B 및 C 값으로는 삼각형을 형성할 수 없습니다.
쿼리는 다음과 같은 단계로 작동합니다:

CASE 문을 사용하여 각 레코드에 대한 조건을 평가합니다.
WHEN A + B > C AND A + C > B AND B + C > A THEN은 주어진 세 변의 길이로 삼각형을 형성할 수 있는지 확인합니다. 조건이 충족되지 않으면 "Not A Triangle"으로 분류됩니다.
만약 조건이 충족된다면, 다시 CASE 문을 사용하여 삼각형의 유형을 확인합니다.
만약 세 변의 길이가 모두 같으면 "Equilateral"로 분류됩니다.
두 변의 길이가 같으면 "Isosceles"로 분류됩니다.
그렇지 않으면 "Scalene"로 분류됩니다.
이렇게 하여 각 레코드는 삼각형 유형에 따라 적절한 설명과 함께 출력됩니다.

SELECT
    CASE
        WHEN A + B > C AND A + C > B AND B + C > A THEN
            CASE
                WHEN A = B AND B = C THEN 'Equilateral: It''s a triangle with sides of equal length.'
                WHEN A = B OR A = C OR B = C THEN 'Isosceles: It''s a triangle with sides of equal length.'
                ELSE 'Scalene: It''s a triangle with sides of differing lengths.'
            END
        ELSE 'Not A Triangle: The given values of A, B, and C don''t form a triangle.'
    END
FROM TRIANGLES;
728x90
반응형

'HackerRank' 카테고리의 다른 글

The PADS(SQL)  (0) 2023.10.16
Basic Join:Population Census  (1) 2023.10.15
Average Population  (0) 2023.10.11
Weather Observation Station 16  (0) 2023.10.11
Weather Observation Station 12  (0) 2023.10.11