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

从子句中嵌套选择

东方华荣
2023-03-14
问题内容

在SQL Server中,

您可以这样编写嵌套的SQL:

SELECT T.con
FROM (SELECT count(*) as "con" FROM EMP) AS T

这样,我可以获得一个可以嵌套到其他查询中的临时表T。

但是我不能在oracle SQL中做同样的事情

它给我 ORA-01747:invalid column

SELECT *
FROM (SELECT count(*) as "con" FROM EMP) T

选择*有效,但这不是我想要的。有人知道该怎么做吗?


问题答案:

无论我显式指定别名还是指定,您发布的查询都对我有效*。收到异常后,您可以发布正在运行的确切查询吗?

SQL> SELECT *
  2  FROM (SELECT count(*) as "con" FROM EMP) T;

       con
----------
        14

SQL> ed
Wrote file afiedt.buf

  1  SELECT "con"
  2* FROM (SELECT count(*) as "con" FROM EMP) T
SQL> /

       con
----------
        14

我的猜测是您要选择con不带双引号的内容。如果在Oracle中使用双引号标识符,则表示Oracle希望标识符区分大小写,这反过来意味着您必须始终以区分大小写的方式引用该标识符,并且必须列名每次都用双引号引起来。我强烈建议不要在Oracle中使用区分大小写的标识符。



 类似资料:
  • 我用的是Flutter和Firestore。假设我的数据库如下所示: 我现在要搜索邮政编码包含“12”的所有人。所以这意味着这个虚拟数据库中的两个记录。 但是,如何在嵌套字段“Address.Postal”上进行筛选? 仅供参考,Flutter中的项目无关紧要。

  • 我正在使用Spring JPA执行所有数据库操作。但是,我不知道如何在Spring JPA中从表中选择特定的行(通过简单的WHERE子句连接)? 用户类: 存储库:

  • 问题内容: 有没有更好的方法来执行以下操作: 看起来很讨厌,我不想这样做: 保持最高效率。 问题答案: 也许您可以尝试这样的事情: 您可以这样称呼它: 这将尝试按它们在列表中的顺序调用这些方法。如果您想传递任何参数,可以像下面这样在列表之后传递它们:

  • 问题内容: 我想知道如何从具有类型列的表中进行选择语句?该列的类型定义为: UPD1 表定义为 如果我选择此列, 我将得到以下无意义的结果: 我只想打开这种类型。 问题答案: 像这样尝试: 这是一个sqlfiddle演示

  • 前面章节中,详细介绍了 3 种形式的条件语句,即 if、if else 和 if elif else,这 3 种条件语句之间可以相互嵌套。 例如,在最简单的 if 语句中嵌套 if else 语句,形式如下: if 表达式 1:     if 表示式 2:         代码块 1     else:         代码块 2 再比如,在 if else 语句中嵌套 if else 语句,形式

  • Swift 条件语句 在 Swift 语言中,你可以在一个 if 或 else if 语句内使用另一个 if 或 else if 语句。 语法 Swift 语言中 嵌套 if 语句的语法: if boolean_expression_1 { /* 当 boolean_expression_1 表达式 true 时执行 */ if boolean_expression_2 {