猿猿猿灬 2022-01-18 19:38 采纳率: 33.3%
浏览 63

oracle left join子查询外加group by报错

问题遇到的现象和发生背景

Oracle数据库 from子查询中使用left join出结果,然后结果再进行group by统计,但是报错,求指教
在Oracle数据库会报错, MySql数据库不会报错

问题相关代码,请勿粘贴截图
SELECT
    c.CT,
    '0',
    SUM(PCOUNT),
    SUM(MONEY/100)
FROM
    (
    SELECT
        CLCT_DAY
,
        CASE
            WHEN CT = '100' THEN '01'
            WHEN CTN = '307' THEN '02'
            WHEN A.CTN=b.PARAM_KEY THEN '03'
            WHEN CTN IN('502', '503') THEN '04'
            WHEN CT = '1100' THEN '05'
            WHEN CT = '600' THEN '06'
            WHEN CT = '400' THEN '07'
            WHEN CT = '500' THEN '08'
            WHEN CTN = '350' THEN '09'
            WHEN CTN = '35A' THEN '10'
            ELSE CT
        END CT,
        PCOUNT,
        MONEY
    FROM
        INFO_T A LEFT JOIN PARAM_T B
        ON A.CTN=B.PARAM_KEY
    WHERE
         DAY = '20220117') c
    GROUP BY CT;

运行结果及报错内容

SQL 错误 [979] [42000]: ORA-00979: 不是 GROUP BY 表达式

我的解答思路和尝试过的方法

未想到

我想要达到的结果

from后面是个结果集,然后对结果集进行group by分组统计

  • 写回答

2条回答 默认 最新

  • CSDN专家-sinJack 2022-01-18 20:30
    关注

    在select列表项中出现的列必须全部出现在group by后面(聚合函数除外)
    select中把'0'去掉试试。

    评论 编辑记录

报告相同问题?

问题事件

  • 修改了问题 1月24日
  • 创建了问题 1月18日

悬赏问题

  • ¥15 【求职】怎么找到一个周围人素质都很高不会欺负他人,并且未来月薪能够达到一万以上(技术岗)的工作?希望可以收到写有具体,可靠,已经实践过了的路径的回答?
  • ¥15 Java+vue部署版本反编译
  • ¥100 对反编译和ai熟悉的开发者。
  • ¥15 带序列特征的多输出预测模型
  • ¥15 Python 如何安装 distutils模块
  • ¥15 关于#网络#的问题:网络是从楼上引一根网线下来,接了2台傻瓜交换机,也更换了ip还是不行
  • ¥15 资源泄露软件闪退怎么解决?
  • ¥15 CCF-CSP 2023 第三题 解压缩(50%)
  • ¥30 comfyui openpose报错
  • ¥20 Wpf Datarid单元格闪烁效果的实现