본문 바로가기

코딩일기

SQL 코드카타 148 - Type of Triangle

https://www.hackerrank.com/challenges/what-type-of-triangle/problem?isFullScreen=true

 

Type of Triangle | HackerRank

Query a triangle's type based on its side lengths.

www.hackerrank.com

 

 

Column Type
A Integer
B Integer
C Integer

 

TRIANGLES 테이블:

  • A, B, C는 각각 선분의 길이입니다.

세 변의 길이를 사용하여 각 레코드의 유형을 식별하는 쿼리를 작성하세요. 테이블의 각 레코드에 대해 다음 중 하나의 문장을 출력하세요:

  • Equilateral: 세 변의 길이가 모두 같은 삼각형입니다.
  • Isosceles: 두 변의 길이가 같은 삼각형입니다.
  • Scalene: 세 변의 길이가 모두 다른 삼각형입니다.
  • Not A Triangle: 주어진 A, B, C 값은 삼각형을 형성하지 않습니다.
select
    case
        when (A+B+C) <= greatest(A, B, C) * 2 then 'Not A Triangle'
        when A = B and B = C then 'Equilateral'
        when ((A+B+C) - least(A, B, C) = greatest(A, B, C) * 2) or ((A+B+C) - greatest(A, B, C) = least(A, B, C) * 2) then 'Isosceles'
        else 'Scalene'
    end type
from TRIANGLES