数据如下

A表 atab
id name
1 张三
2 李四
3 王五

– B表 btab
a_id score
1 8
1 6
1 10
2 10
2 10
2 3

结果展示

统计他们得过几次10分
name result
张三 1
李四 2
王五 0
合计 3

**

sql:

**
方法一(比较麻烦):
select * from (
select name,sum(case when score=‘10’ then 1 else 0 end) result
from atab a,btab b where a.id=b.a_id group by a.name )
union all
select a.name,0 from atab a where not exists
(select * from btab b where a.id=b.a_id )
union all
select ‘合计’,
sum(case when score=‘10’ then 1 else 0 end) result
from btab

方法二:
select c.name,sum(case when c.score=‘10’ then 1 else 0 end) result from (
select name,nvl(score,0) score from atab a left join btab b on a.id=b.a_id) c
group by c.name
union all
select ‘合计’,
sum(case when score=‘10’ then 1 else 0 end) result
from btab

oracle分组关联统计,没有记录则显示0相关推荐

  1. ORACLE 语句关联统计

    很久不用SQL语句了,貌似入职新公司后,又回归到了三年前的SQL时代,一写一坨的SQL好吧,也当回归一下过去的知识. 下面是统计2月份某数据的计费统计 select t.telno as 主号,VID ...

  2. oracle关联分组查询,oracle中关联查询、分组查询

    高级查询 1.关联查询 作用:可以跨越多表查询 --查询出员工的名字和他所在部门的的名字 //古老的写法 select first_name,name from s_emp,s_dept where ...

  3. oracle 指定关联,Oracle巧取指定记录以及巧用外关联查询

    51Testing软件测试网n*ue;R,F%SF5j]"f%Q Oracle巧取指定记录以及巧用外关联查询)L,mOf&ym2g0 9xJ}]-y0作者:010032  51Tes ...

  4. 查询oracle表上重复的数据库,如何确定Oracle数据库表重复的记录

    正在看的ORACLE教程是:如何确定Oracle数据库表重复的记录. 作为一个Oracle数据库开发者或者DBA,在实际工作中经常会遇到这样的问题:试图对库表中的某一列或几列创建唯一索引时,系统提示O ...

  5. oracle stalestats_深入理解oracle优化器统计数据(Optimizer Statistics)

    理解oracle优化器统计数据 首先来介绍oracle数据库使用基于规则优化器(RBO)来决定如何执行一个sql语句.基于规则优化器顾名思义,它是遵循一组规则来判断一个sql语句的执行计划.这组规则是 ...

  6. 【转】【CUBE】Oracle分组函数之CUBE魅力

    [转][CUBE]Oracle分组函数之CUBE魅力 http://blog.itpub.net/519536/viewspace-610997/ Oracle的CUBE与ROLLUP功能很相似,也是 ...

  7. SQL进行排序、分组、统计的10个新技巧

    1.使用排序使数据有序 通常,你的所有数据真正需要的仅仅是按某种顺序排列.SQL的ORDER BY语句可以以字母或数字顺序组织数据.因此,相似的值按组排序在一起.然而,这个分组时排序的结果,并不是真的 ...

  8. 相邻记录日期差 oracle,sql 相邻2条记录时间差比较

    软件安装:装机软件必备包 SQL是Structured Query Language(结构化查询语言)的缩写.SQL是专为数据库而建立的操作命令集,是一种功能齐全的数据库语言.在使用它时,只需要发出& ...

  9. oracle 高效函数,Oracle分组函数之高效的ROLLUP

    Oracle/" target=_blank>Oracle分组函数之高效的ROLLUP ㈠ 初始化实验坏境 www.2cto.com [sql] hr@ORCL> create ...

最新文章

  1. mysql 打包表在phpmyadmin提示正在使用中..
  2. 多态部分作业 2.编写2个接口:InterfaceA和InterfaceB;在接口InterfaceA中有个方法void 输出大小写字母表
  3. Junit5新功能一览
  4. 超神!卡内基博士ImageNet夺冠后转战NLP!
  5. 【解除Windows开机登陆密码的5种方法】
  6. python写一个类方法_python中如何写类
  7. 5G来了 多款4G手机开始降价销售
  8. HDU2034 人见人爱A-B【水题】
  9. vim编辑器-缩进修改
  10. C语言自己写代码实现的strcmp函数
  11. 浅入浅出Vivado IP之DDS Compiler
  12. 计算机数学位数,有效位数
  13. 综合布线:如何选择多模光纤和单模光纤
  14. 调研报告之——可见光通信与可见光定位
  15. Google-Hacking 语法笔记
  16. android中使用hbuilder混合开发中提示未添加plugintest模块 请参考283
  17. 如何成为一名优秀的程序员(六)
  18. PHP:【商城后台管理系统】admin超级管理员后台操作界面部署{无限级菜单}
  19. 【 iconfont-阿里巴巴矢量图标库使用】
  20. 给input[text]添加icon,并且绑定事件

热门文章

  1. 程序员经常看的开源月刊《HelloGitHub》第 57 期
  2. 辽宁计算机应用考试报名时间,2021辽宁上半年计算机应用水平考试报名时间及方法...
  3. chrome浏览器隐藏地址栏_Chrome将隐藏地址栏的网址 这么做的原因是为了防止钓鱼网址...
  4. glob,正则表达式元字符,扩展正则表达式总结
  5. codeforces798C - Mike and gcd problem (数论+思维)
  6. java程序执行的底层原理
  7. sed、head、grep、tail、EOF
  8. Oracle的tnsnames.ora配置(PLSQL Developer)
  9. 面试常考题:不调用库函数,怎样实现字符串操作函数?
  10. web服务器压力测试工具