表
id(自增) 字段1 字段2 字段3 字段4 字段5
1 A a 2007-01-01 完成 1
2 A b 2007-01-01 完成 1
3 A c 2007-01-01 完成 1
4 A d 2007-01-01 完成 1
5 A null 2007-01-02 末完成 2
6 B a 2007-01-03 完成 3
求一第SQL语句
要求按字段1分组同时对字段2进行count操作当字段2为null的时候oucnt结果显示成0(当字段2的值为null的时候,可以保证对应该的字段5的值是唯一的).
当分组记录中字段5有两个以上不同的值的时候将记录显示出来(如字段1分组时字段5中含有1,2两个值显示出两条记录,有3个不同值时显示3条记录),如只有一个值不显示,
id(自增) 字段1 字段2 字段3 字段4 字段5
1 A a 2007-01-01 完成 1
2 A b 2007-01-01 完成 1
3 A c 2007-01-01 完成 1
4 A d 2007-01-01 完成 1
5 A null 2007-01-02 末完成 2
6 B a 2007-01-03 完成 3
求一第SQL语句
要求按字段1分组同时对字段2进行count操作当字段2为null的时候oucnt结果显示成0(当字段2的值为null的时候,可以保证对应该的字段5的值是唯一的).
当分组记录中字段5有两个以上不同的值的时候将记录显示出来(如字段1分组时字段5中含有1,2两个值显示出两条记录,有3个不同值时显示3条记录),如只有一个值不显示,
解决方案 »
- Oracle连接一个java软件(Ireport)后,想要从一张表中同时获取总人数、男生数、女生数,如何解决?
- 行转列的sql语句
- 请教 进行冷备时,是否需要备份临时表空间文件?
- ORACLE 表数据使用
- 如何判断oracle数据库中是否存在某个表
- 在线等:密码含有“@”,怎么使用SQL PLUS?
- 请教USER_EXIT的用法
- 简单问题,存储过程怎样返回数据集?
- ORA-12541: TNS: 没有监听器?
- Oracle8.1.7安装 求助高手!!
- 性能问题:ORACLE 9i2,我们的数据库数据和客户的是相同的(IMPORT过来的),但是相同的PROCEDURE用T_CURSOR返回记录做查询,我们这边只需要1,2
- 请大家指点:有效的Oralce数据库间同步软件或模块,请大家给推荐推荐!
Select 字段1, 字段2,decode(字段2,1,NULL,字段5) as 字段5
from (
Select 字段1,sum(case when 字段2 is not null
then 1 else 0 end) as 字段2, 字段5
from 表 group by 字段1,字段5) t
1 A 4
2 A 0这样就可以了!
from (
Select 字段1,sum(case when 字段2 is not null
then 1 else 0 end) as 字段2, 字段5
from 表 group by 字段1,字段5
having sum(case when 字段2 is not null
then 1 else 0 end)>1) t