oracle分组关联统计,没有记录则显示0
数据如下
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相关推荐
- ORACLE 语句关联统计
很久不用SQL语句了,貌似入职新公司后,又回归到了三年前的SQL时代,一写一坨的SQL好吧,也当回归一下过去的知识. 下面是统计2月份某数据的计费统计 select t.telno as 主号,VID ...
- oracle关联分组查询,oracle中关联查询、分组查询
高级查询 1.关联查询 作用:可以跨越多表查询 --查询出员工的名字和他所在部门的的名字 //古老的写法 select first_name,name from s_emp,s_dept where ...
- oracle 指定关联,Oracle巧取指定记录以及巧用外关联查询
51Testing软件测试网n*ue;R,F%SF5j]"f%Q Oracle巧取指定记录以及巧用外关联查询)L,mOf&ym2g0 9xJ}]-y0作者:010032 51Tes ...
- 查询oracle表上重复的数据库,如何确定Oracle数据库表重复的记录
正在看的ORACLE教程是:如何确定Oracle数据库表重复的记录. 作为一个Oracle数据库开发者或者DBA,在实际工作中经常会遇到这样的问题:试图对库表中的某一列或几列创建唯一索引时,系统提示O ...
- oracle stalestats_深入理解oracle优化器统计数据(Optimizer Statistics)
理解oracle优化器统计数据 首先来介绍oracle数据库使用基于规则优化器(RBO)来决定如何执行一个sql语句.基于规则优化器顾名思义,它是遵循一组规则来判断一个sql语句的执行计划.这组规则是 ...
- 【转】【CUBE】Oracle分组函数之CUBE魅力
[转][CUBE]Oracle分组函数之CUBE魅力 http://blog.itpub.net/519536/viewspace-610997/ Oracle的CUBE与ROLLUP功能很相似,也是 ...
- SQL进行排序、分组、统计的10个新技巧
1.使用排序使数据有序 通常,你的所有数据真正需要的仅仅是按某种顺序排列.SQL的ORDER BY语句可以以字母或数字顺序组织数据.因此,相似的值按组排序在一起.然而,这个分组时排序的结果,并不是真的 ...
- 相邻记录日期差 oracle,sql 相邻2条记录时间差比较
软件安装:装机软件必备包 SQL是Structured Query Language(结构化查询语言)的缩写.SQL是专为数据库而建立的操作命令集,是一种功能齐全的数据库语言.在使用它时,只需要发出& ...
- oracle 高效函数,Oracle分组函数之高效的ROLLUP
Oracle/" target=_blank>Oracle分组函数之高效的ROLLUP ㈠ 初始化实验坏境 www.2cto.com [sql] hr@ORCL> create ...
最新文章
- mysql 打包表在phpmyadmin提示正在使用中..
- 多态部分作业 2.编写2个接口:InterfaceA和InterfaceB;在接口InterfaceA中有个方法void 输出大小写字母表
- Junit5新功能一览
- 超神!卡内基博士ImageNet夺冠后转战NLP!
- 【解除Windows开机登陆密码的5种方法】
- python写一个类方法_python中如何写类
- 5G来了 多款4G手机开始降价销售
- HDU2034 人见人爱A-B【水题】
- vim编辑器-缩进修改
- C语言自己写代码实现的strcmp函数
- 浅入浅出Vivado IP之DDS Compiler
- 计算机数学位数,有效位数
- 综合布线:如何选择多模光纤和单模光纤
- 调研报告之——可见光通信与可见光定位
- Google-Hacking 语法笔记
- android中使用hbuilder混合开发中提示未添加plugintest模块 请参考283
- 如何成为一名优秀的程序员(六)
- PHP:【商城后台管理系统】admin超级管理员后台操作界面部署{无限级菜单}
- 【 iconfont-阿里巴巴矢量图标库使用】
- 给input[text]添加icon,并且绑定事件
热门文章
- 程序员经常看的开源月刊《HelloGitHub》第 57 期
- 辽宁计算机应用考试报名时间,2021辽宁上半年计算机应用水平考试报名时间及方法...
- chrome浏览器隐藏地址栏_Chrome将隐藏地址栏的网址 这么做的原因是为了防止钓鱼网址...
- glob,正则表达式元字符,扩展正则表达式总结
- codeforces798C - Mike and gcd problem (数论+思维)
- java程序执行的底层原理
- sed、head、grep、tail、EOF
- Oracle的tnsnames.ora配置(PLSQL Developer)
- 面试常考题:不调用库函数,怎样实现字符串操作函数?
- web服务器压力测试工具