*사진 첨부 순서 죄송합니다
두 번째 첨부드린 사진과 같이 데이터가 있는 테이블을 계층형 조회하는 쿼리문을 작성했습니다.
WITH RECURSIVE cte AS ( SELECT id, NAME, parent_id, CAST(id AS CHAR(100)) AS depth, 1 AS LEVEL FROM Organization WHERE parent_id IS NULL UNION all SELECT o.id, o.NAME, o.parent_id, CONCAT(c.depth, '-', o.id) AS depth, 1 + c.level AS level FROM Organization o INNER JOIN cte c ON o.parent_id = c.id ) SELECT * FROM cte ORDER BY depth;
위와 같이 쿼리를 작성해서 조회 했을 떄 첫 번째 사진과 같이 1-5-9보다 1-5-10가 먼저 출력되는 문제를 겪고 있습니다.
CHAR 타입이라 문자열로 비교되어 그렇다고 생각해도 이해가 잘 안 됩니다,,, 도움 주시면 감사하겠습니다!