테이블 설명 :
1,3,6,9 = Leaf
2,8 = Inner
5 = Root
N은 value 컬럼이고 p는 n의 부모를 나타내는 값이다
첫번째 생각
"조건에 따라 분류를 해야 하니 case when을 활용하자"
두번째 생각
"조건에 따라 구별할때 가장 명확한 것 부터 제거 하자"
SELECT N,
CASE WHEN P IS NULL THEN "Root"
WHEN N NOT IN (SELECT P FROM BST WHERE P IS NOT NULL) THEN 'Leaf'
ELSE 'Inner' END
FROM BST
ORDER BY N