sql - PLSQL - 递归 sql 的游标
问题描述
我有一个递归 sql 查询,它看起来像这样:
WITH goes(from_, to_) AS
(
SELECT from_, to_ FROM ways
UNION ALL
SELECT ways.from, goes.to_ FROM ways, goes
WHERE ways.to_ = goes.from_ AND ways.from_ <> goes.to_
)
CYCLE from_ SET is_cycle TO 'I' DEFAULT 'N'
SELECT distinct from_, to_ FROM goes order by 1
我想写一个plsql过程,它可以把这个查询的输出当作游标处理,但是我不知道如何启动它。
你能帮帮我吗?谢谢你。
解决方案
这取决于您所说的“句柄”是什么意思。最简单的是隐式 FOR 游标:
for rec in
(
with goes as ....... order by 1
)
loop
-- enter processing commands here
end loop;
推荐阅读
- python - How do I draw a list of class objects in pygame?
- javascript - 选项卡/浏览器仅关闭事件监听器(不刷新,页面卸载)
- module - 如何仅将模块的功能导出为另一个模块的一部分?
- mysql - MySQL 更新表作为另一个表中的 SELECT 的结果
- three.js - 如何使用 webxr 获取相机世界方向?
- php - 未在 Aws Ec2 实例上为 PHP 7.2 执行 PHP 代码
- android - 我在 android 手机 ( 7.0 ) 中看不到背景颜色,但在平板电脑中我可以
- python - 是否可以在 numpy.linalg 中强制执行整数运算?
- jquery - JQuery Keydown 事件在 IE 11 中不起作用
- php - 如何将多个复选框值传递给 Wordpress 搜索?custom_tax[]=val1&custom_tax[]=val2