【问题标题】:How to use GROUP BY clause on a derived table in oracleoracle 派生表如何使用 GROUP BY 子句
【发布时间】:2016-03-17 21:43:57
【问题描述】:

我正在处理一个复杂的 sql 查询,执行它时总是收到 oracle 错误 ORA-00933。我将查询最小化为这个最小的例子:

SELECT foo.bar, sum(foo.baz) 
  FROM (SELECT  123  as bar,  5 as baz FROM dual) as foo
GROUP BY foo.bar

这似乎与使用派生表和 GROUP BY 子句有关。

如何重写查询以支持派生表foo 上的 GROUP BY 子句?

【问题讨论】:

  • 你为什么还需要这里的小组?
  • @Lucero 因为我不想用我正在处理的 10kB sql 语句的其余部分来打扰你。

标签: sql oracle group-by


【解决方案1】:

Oracle 不支持as 定义表别名。

所以试试这个:

SELECT foo.bar, sum(foo.baz) 
FROM (SELECT 123 as bar, 5 as baz FROM dual) foo
GROUP BY foo.bar;

请使用as(尽管它是可选的)作为列别名。

【讨论】:

    猜你喜欢
    • 2012-04-20
    • 1970-01-01
    • 2021-08-15
    • 2022-01-13
    • 2023-04-04
    • 2011-09-25
    • 1970-01-01
    • 1970-01-01
    • 2021-11-06
    相关资源
    最近更新 更多