MySQL/Problem Solving
[HackerRank] Type of Triangle
hanshow113
2022. 1. 18. 13:15
CASE 문법 학습 후 처음 풀어본 문제라 처음엔 파이썬의 iloc을 사용하는 것처럼 각 A, B, C 열의 원소별로 비교를 해야 하는 건가 생각을 했었음.
sql은 FROM 테이블을 지정하고 나서 SELECT 문을 실행하면 행 단위로 바로 비교가 가능한 것 같음
SELECT CASE
WHEN A = B AND B = C THEN 'Equilateral'
WHEN A >= B+C OR B >= A+C OR C >= A+B THEN 'Not A Triangle'
WHEN A=B OR B=C OR A=C THEN "Isosceles"
ELSE 'Scalene'
END
FROM TRIANGLES
또한 Not A Triangle과 Isosceles 쿼리의 순서가 바뀌게 되면 조건이 겹치는 지점이 있을 수 있기 때문에 오류가 발생하고, 순서에 유의해야 함