Oracle递归函数的结果如何获取

avatar
作者
筋斗云
阅读量:0

在Oracle中,可以使用WITH子句(也称为公共表表达式)来编写递归查询。当使用递归查询时,可以在查询中指定递归终止条件和递归部分。

要获取递归函数的结果,可以在SELECT语句中引用递归查询的结果。例如:

WITH RECURSIVE cte (id, parent_id, name, level) AS (   SELECT id, parent_id, name, 0 AS level   FROM your_table   WHERE parent_id IS NULL      UNION ALL      SELECT t.id, t.parent_id, t.name, cte.level + 1   FROM your_table t   INNER JOIN cte ON t.parent_id = cte.id ) SELECT * FROM cte; 

在上面的例子中,递归查询将从表中选择具有NULL parent_id的行作为起始点,并且每次递归时会将level加1。最后的SELECT语句将返回递归查询的所有结果。

因此,要获取递归函数的结果,只需在SELECT语句中引用递归查询的结果即可。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!