我有一个类别表,其中的层次结构由id,parentid(即一个类别的ID作为另一类别的父母ID维护,那么它是该元素的子代)。我想递归地从孩子上升到直接父母,并检查其中一列说FooterAdId是否为null。如果为null,请继续检查,否则返回FooterAdId。我可以通过cte递归查询获取顶级父项,但对如何将条件应用于上述情况感到困惑...
在这里,我手上有id 6,如上所述,我想要的结果是101。
最佳答案
使用您的CTE,并在ROW_NUMBER()
中包含AS RowNum
列。然后,根据CTE
WITH MyCte AS
...
SELECT TOP 1 footeradid
FROM MyCte
WHERE footeradid IS NOT NULL
ORDER BY RowNum
关于sql - SQL查询以获取满足条件的直接父级,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22139188/