今天,写了以下SQL语句:

select (select well_name from well where well_id = wa.well_id) well_name,sum(prod_time)/24

prod_days
FROM pro_well_vol_daily daily, well_attribute wa
           WHERE daily.well_id = wa.well_id

报错:ORA-00937:不是单组分组函数

加上GROUP BY之后,是这样的:

select (select well_name from well where well_id = wa.well_id) well_name,sum(prod_time)/24

prod_days
FROM pro_well_vol_daily daily, well_attribute wa
           WHERE daily.well_id = wa.well_id
           group by (select well_name from well where well_id = wa.well_id)
但是,报错:ORA-22818:这里不允许出现子查询表达式。

在群里问了一下,那个高手说可以吧well那个表放在外面进行查询。

于是,我试了一下:

SELECT  w.well_name   ,sum(prod_time)/24 prod_days

FROM pro_well_vol_daily daily, well_attribute wa, well w
WHERE daily.well_id = wa.well_id

AND well_id = wa.well_id

group by w.well_name;

可以~\(≧▽≦)/~啦啦啦。

还有一种方式:

当查询语句中有MAX,AVG等聚合函数,SELECT 后面出现的字段或子查询必须出现在GROUP BY后面(group

by后面不能跟子查询)。
但若不想按这个字段排序,又想让这个字段出现在查询语句中,可以在这些字段或子查询前加

MAX,MIN,DECODE等函数。

select  MAX( (select well_name from well where well_id = wa.well_id) )well_name,sum(prod_time)/24

prod_days
FROM pro_well_vol_daily daily, well_attribute wa
           WHERE daily.well_id = wa.well_id

ORA-00937:不是单组分组函数 ORA-22818:这里不允许出现子查询表达式相关推荐

  1. ORA-00937: 不是单组分组函数

    最近写SQL的时候,有遇到过报出 ORA-00937的问题. 解释: select 列表项中除了包含聚合函数外,还包含了表的某些列,那么你将必须使用group by语句,否则语法通不过. 例如: SQ ...

  2. Oracle报错:不是单组分组函数解决

    Oracle报错:不是单组分组函数解决 报错:不是单组分组函数 实例:select deptno,count(empno) from emp; 报错:不是单组分组函数 原因: 1, 如果程序中使用了分 ...

  3. Oracle SQL group by-报错:不是单组分组函数

    报错:不是单组分组函数 实例:select deptno,count(empno) from emp; 报错:不是单组分组函数 原因: 1, 如果程序中使用了分组函数,则有两种情况可以使用: 程序中存 ...

  4. Oracle-SQL-group by-报错:不是单组分组函数

    报错:不是单组分组函数 实例:select deptno,count(empno) from emp; 报错:不是单组分组函数 原因: 1,如果程序中使用了分组函数,则有两种情况可以使用: 程序中存在 ...

  5. count()--不是单组分组函数

    今天写了一句查询语句,里面涉及到count()统计的使用,刚开始查询的时候老是弹出"什么不是单组分组函数".百度了一下才知道原来是语法错误了. select count(),字段1 ...

  6. PostgreSQL 10.1 手册_部分 II. SQL 语言_第 9 章 函数和操作符_9.22. 子查询表达式

    9.22. 子查询表达式 9.22.1. EXISTS9.22.2. IN9.22.3. NOT IN9.22.4. ANY/SOME9.22.5. ALL9.22.6. 单一行比较 本节描述Post ...

  7. group by 不是单组分组函数

    在select子句中除了分组函数外没有其他列的时候,才可以用group by,否则group by子句中的列必须与select子句的列相同. 如: 正确:select a,b,sum(c) from ...

  8. SQL数据分析:sqlzoo官网学习select,where,order by,limit,聚合函数,having,常用函数,窗口函数,表链接,子查询

    SQL数据分析: 2022找工作是学历.能力和运气的超强结合体,遇到寒冬,大厂不招人,可能很多算法学生都得去找开发,测开 测开的话,你就得学数据库,sql,oracle,尤其sql要学,当然,像很多金 ...

  9. Oracle报错:不是单组分组函数

    sql语句进行分组查询,存在聚合函数 原因:sql 的group by 语句有问题 解决办法:检查group by 后的语句,需要将语句中的非聚合函数部分写到group by中

最新文章

  1. Hadoop学习--HBase与MapReduce的使用
  2. ae插件form_九个绝对不能错过的AE插件!
  3. .NET Core 3.0之创建基于Consul的Configuration扩展组件
  4. 《C++ Primer》7.3.2节练习
  5. 最近公共祖先_leetcode No.236 二叉树的最近公共祖先
  6. udf提权 udf.php,UDF提权
  7. 系统集成项目管理工程师考试复习-Part3
  8. 用ajax下载字节流形式的excel文件
  9. matlab gui怎样将结果保存_Matlab将工作区变量保存到文件中的方法
  10. 图文介绍进程和线程的区别
  11. Linux cache清理
  12. centos下修改mysql root密码
  13. Windows内核原理与实现之Windows研究内核(WRK)
  14. 字幕/打轴/压制小tip——Aegisub MeGUI 极简操作指南
  15. avr单片机c语言库,AVR单片机C语言编译器
  16. 安卓中关于图片的类型
  17. 中国汽车市场的“底层”骗局
  18. 《基于Vue实战打造抖音WebApp》
  19. Windows系统使用开源工具scrcpy投屏
  20. 一致性哈希算法原理详解

热门文章

  1. 基于SSM+Bootstrap【爱校教务系统管理系统】附源码
  2. Jini 能给您带来什么
  3. SwiftUI应用开屏广告界面项目(一)
  4. 智能大屏和HTML5的小时代-杨勇强,乐视网CTO
  5. 如何在电脑端写qq看点文章?如何在电脑端找QQ看点
  6. python输出箭头代码_OS X和代码在Python中的“向上箭头”历史记录.InteractiveConsole...
  7. js校验电话、传真、日期
  8. [玩机] 如何获取Windows Store 商店应用下载链接
  9. 值得收藏-装修攻略全
  10. Hierarchical Graph Network for Multi-hop Question Answering 论文笔记