在oracle数据库中
统计人员表的籍贯人员表 table_persid province dept
001 北京 A
002 上海 A
003 深圳 A
004 广州 A
005 北京 B
006 北京 B
007 上海 C
008 上海 C想得到像这样的关于籍贯的统计结果province total dept_A dept_B dept_C
北京 3 1 2 0
上海 3 1 0 2
深圳 1 1 0 0
广州 1 1 0 0sql语句应该怎样写
谢谢大家
统计人员表的籍贯人员表 table_persid province dept
001 北京 A
002 上海 A
003 深圳 A
004 广州 A
005 北京 B
006 北京 B
007 上海 C
008 上海 C想得到像这样的关于籍贯的统计结果province total dept_A dept_B dept_C
北京 3 1 2 0
上海 3 1 0 2
深圳 1 1 0 0
广州 1 1 0 0sql语句应该怎样写
谢谢大家
解决方案 »
- 关于ORACLE数据库备份的简单问题
- TOAD 连接 oracle10G 报错!
- ORACLE安装程序windows下和linux下的为什么要单独下载?
- !!!求救,oracle 多线程查询问题
- Oracle9i的TOOLS-Export的使用
- oracle 表空间问题,会者不难
- 求sql语句
- 在服务器上,为什么通过oracle enterprise manager登录时那个服务名是灰显的,服务名和数据库名,sid到底有什么关联
- 如何得知某个字段比如(u_id)都在哪些表中。
- oracle安装错误
- 能否在通过程序来控制存储过程的事务呢?
- 麻烦看下这个用in为条件的动态sql,为什么查不出结果?
count(1) total,
sum(decode(dept, A, 1, 0)) dept_A,
sum(decode(dept, B, 1, 0)) dept_B,
sum(decode(dept, C, 1, 0)) dept_C
from table_pers
group by province
sum(decode(dept,'B',1,0)) dept_B,
sum(decode(dept,'C',1,0)) dept_C
from 表名
group by province
再问一个问题
这种方式的查询支持对部门(dept)的模糊搜索吗
sum(case when instr(dept,'包含的')>0 then 1 else 0 end) dept_B,
sum(case when instr(dept,'包含的')>0 then 1 else 0 end) dept_C
from 表名
group by province