【问题标题】:Missing Expression when selecting all columns and one more选择所有列和多列时缺少表达式
【发布时间】:2012-09-18 06:06:08
【问题描述】:

这种查询在 SQL Server 中可以完美运行,但在 Oracle 中却不行。

select issueno, * from SOMETABLE;

我得到的错误信息是:

ORA-00936: 缺少表达式 00936. 00000 - “缺少表达式” *原因:
*操作:行错误:1 列:16

怎么了?

【问题讨论】:

  • 最新消息:Oracle != MSSQL。那么issueno 是什么,它是 SOMETABLE 上的一个专栏吗?
  • 为什么要选择同一列两次?它已经包含在*中。
  • 是的,issueno 是 SOMETABLE 中的一列,我使用这种查询方式只是为了方便。在进行分析并希望在结果开头查看选定字段时很有用

标签: sql oracle


【解决方案1】:

试试这个,在使用 oracle db 时,当你使用列名和 * 时需要别名

select issueno, A.* from SOMETABLE A;

【讨论】:

    【解决方案2】:

    在 Oracle 上,您必须包含表名或别名才能使用 *.试试这个:

    select issueno, SOMETABLE.*
    from SOMETABLE;
    

    【讨论】:

      猜你喜欢
      • 2012-06-06
      • 2017-12-20
      • 1970-01-01
      • 2020-10-13
      • 1970-01-01
      • 2014-10-03
      • 1970-01-01
      • 1970-01-01
      • 2020-01-22
      相关资源
      最近更新 更多