当前位置: 首页 > 面试题库 >

SQL查询中的游标

壤驷鸿祯
2023-03-14
问题内容

在Oracle中,可以cursor使用cursor关键字返回SQL查询内部的内容,如下所示:

select owner, table_name,
    cursor (select column_name 
        from all_tab_columns
        where owner = allt.owner 
        and table_name = allt.table_name) as columns
from all_tables allt

问题是:

  1. 有谁知道我在哪里可以找到相关文档?
  2. PortgreSQL(或任何其他开源DBMS)是否具有类似的功能?

问题答案:

它被称为CURSOR EXPRESSION,并在明显的地方记录了该文档:《 Oracle SQL参考》。
在这里找到它。

关于第二个问题,PostgreSQL提供的与此功能最接近的东西是“标量子查询”。但是,正如@tbrugz所指出的那样,它们仅返回一行和一列,因此它们与游标表达式不太相似。
在此处的文档中阅读有关它们的信息。MySQL还具有标量子查询,再次限制为一列和一行。文档在这里。同样,SQL Server和DB2(不是开放源代码,但出于完整性考虑)。

那排除了所有明显的竞争者。因此,似乎其他任何DBMS都不可能提供从Oracle的游标表达式中获得的锯齿状结果集。



 类似资料:
  • 本文向大家介绍SQL中的子查询,包括了SQL中的子查询的使用技巧和注意事项,需要的朋友参考一下 子查询是查询内的查询,即嵌套查询。它放置在查询中,其结果用于进一步评估外部查询。 在SQL中,子查询必须遵循一些规则。其中一些是- 子查询应放在括号内。 子查询可以与不同的运算符(如<,>,<=,> =,IN,BETWEEN等)一起使用。还可以使用SELECT,INSERT,DELETE,UPDATE等

  • 问题内容: 我的SQL查询可能有问题。在此查询中,我合并了4个不同的表。 我有一个用于存储常规信息的表(,)。 我有一个表,用于存储员工的一般信息(和)。 员工有工作。一名员工需要参加课程。这取决于他必须修的课程。此信息存储在表中(带有和)。 如果员工完成了课程,则将其存储在表中(带有和) 现在,我要搜索某个课程-当用户按下搜索按钮时,他应该得到两个不同的结果。 第一个:在这里您可以看到 哪个员工

  • 问题内容: 有没有办法观察将由生成的SQL语句? 例如,我有这个:是否 可以查看其基础的原始SQL? 问题答案: 光滑2.X: 您可以按照Slick文档中所示打印查询语句: 对于其他类型的报表看,和。 光滑的3.X: 文件。

  • 问题内容: 我在一个使用专有的非SQL DB的项目中工作,在该项目中查询可能会中断,并且在代码库中有很多地方使用了该功能并且非常有意义(例如,停止长时间运行的查询会被取消用户,或者发生较新的查询并使上一个查询过时等),我意识到我以前从未真正看到过这种“中断查询”,并认为它可以提出一个很好的SO问题(几个问题,但是它们都与完全相同的事物有关): SQL查询可以中断吗? 这是SQL标准的一部分吗? 如

  • 问题内容: 我刚刚开始在SQL Server数据库中查询XML。我在使用最基本的查询时遇到了麻烦。这是一个简化的示例。如何返回说明?下面的SELECT语句是我正在使用的内容,但未返回任何内容。 这是我正在使用的XML文件的代码段: 问题答案: 好吧,您错过了XML名称空间!:-) 试试这个: 魔术是 在此部分-它声明了对该XML数据进行查询期间的名称空间(带有您选择的前缀-可以是任何内容-在这里为

  • 使用类似SQL的关键字在Tarantool DB中进行查询的正确方法是什么?例如: