我需要返回类别/子类别的名称,递归只会达到1级深度(从不超过1个子类别)
表数据将类似于:
CATEGORY NAME - CAT ID - PARENT ID
Cat A - 1 - 0
Cat B - 2 - 0
Sub Cat A - 3 - 1
DESIRED RESULTS
Cat A
Cat A > Sub Cat A
Cat B
谢谢!
编辑:(这是我到目前为止所尝试的)
SELECT FC1.CATEGORY_ID,
FC1.CATEGORY_NAME,
FC1.PARENT_CATEGORY_ID,
FC2.PARENT_CATEGORY_ID,
FC2.CATEGORY_NAME AS PARENT_CATEGORY_NAME
FROM CATEGORY FC1
LEFT
JOIN CATEGORY FC2
ON FC2.CATEGORY_ID = FC1.CATEGORY_ID
ORDER BY CATEGORY_NAME
答案 0 :(得分:3)
你需要改变这个:
ON FC2.CATEGORY_ID = FC1.CATEGORY_ID
(将每个记录加入到自身)到此:
ON FC2.CATEGORY_ID = FC1.PARENT_CATEGORY_ID
(将每条记录加入其父级)。