gpt4 book ai didi

oracle - Oracle中oracle游标(select ..)查询的目的是什么?

转载 作者:行者123 更新时间:2023-12-02 11:40:11 25 4
gpt4 key购买 nike

我试图理解使用游标(select..)查询的目的。例如,我从 oracle 文档中得到了这个。我可以将员工加入到部门表中。光标是怎么回事?

SELECT department_name, CURSOR(SELECT salary, commission_pct 
FROM employees e
WHERE e.department_id = d.department_id)
FROM departments d
ORDER BY department_name;

最佳答案

CURSOR 表达式是一个很少使用的功能,它使您能够将数据集传递到 PL/SQL 过程。

这允许高级功能,例如链接并行流水线函数。这提供了一种快速处理过程代码的多个阶段的方法。请参阅PL/SQL Language Reference举个例子。

这是一个有趣的功能,但使用 CURSOR 表达式通常是一个巨大的错误。这意味着您的大部分处理将在 PL/SQL 而不是 SQL 中完成。 PL/SQL 非常适合控制 SQL,但它通常不是您想要执行繁重工作的地方。

我只看到过使用 CURSOR 表达式,原因有两个:

  1. 开发人员不了解中级或高级 SQL 功能,例如分析函数、MODEL 等。
  2. 构建企业规则引擎。

关于oracle - Oracle中oracle游标(select ..)查询的目的是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21460095/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com