Linux 拨号vps windows公众号手机端

oracle递归函数如何调用

lewis 9年前 (2016-12-18) 阅读数 7 #VPS/云服务器
文章标签 oracle

在Oracle中,可以使用WITH语句来定义递归查询,也可以使用递归子查询来调用递归函数。

  1. 使用WITH语句定义递归查询:
WITH recursive_query AS (
-- 初始查询
SELECT initial_query
FROM ...
UNION ALL
-- 递归查询
SELECT recursive_query
FROM recursive_query
JOIN ...
ON ...
)
SELECT *
FROM recursive_query;

在WITH语句中,递归查询部分由UNION ALL连接,其中初识查询部分是非递归的,递归查询部分是基于前一次的查询结果进行递归的。

  1. 使用递归子查询调用递归函数:
SELECT recursive_function(...)
FROM dual
CONNECT BY PRIOR column = column;

在递归子查询中,使用CONNECT BY PRIOR语句来指定递归条件,PRIOR关键字表示前一次的迭代结果。递归函数可以在SELECT语句中调用,返回结果通过CONNECT BY PRIOR语句进行迭代。

版权声明

本文仅代表作者观点,不代表米安网络立场。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

热门