有如下数据
orgid orgname dj djmc count
1 财务部 01 非常满意 2
1 财务部 02 满意 1
2 综合部 01 满意 2希望显示的数据
orgname dj1 count dj2 count
财务部 非常满意 2 满意 1
综合部 非常满意 0 满意 1
orgid orgname dj djmc count
1 财务部 01 非常满意 2
1 财务部 02 满意 1
2 综合部 01 满意 2希望显示的数据
orgname dj1 count dj2 count
财务部 非常满意 2 满意 1
综合部 非常满意 0 满意 1
解决方案 »
- 求助,想在Oracle中调取当天数据或者近几天数据,sql语句出现问题,求解决办法。,现将近几天调试状况写一下,希望
- 蔟表与表分区技术可以同时使用吗,有例子吗?
- MSSQL 统计并排序语句 怎么写啊? 帮忙看看!
- user1中建的过程,在user2中执行,如何让它此时只处理user2中的数据
- solaris10下的oracle10g服务的启动
- 数据表记录有500万行,想根据字段1=?和字段2=?(两个字段都不是主键)的组合查询出相应得记录,怎么做性能较好?
- 我在里查询时,为什么ORACLE会说内存溢出,是什么原因?如何解决?
- sqlserver中的“select *,(select count(*) from TType where ParentID = T.TypeID) as num from TType T ”在oracle怎么写?
- 菜鸟问题:如何创建normal用户?
- 请教使用.net连接oracle数据库的问题
- Oracle11G, 如果作网卡端口筛选?
- oracle 存储过程字符串出错
select 1 orgid, '财务部' organame, '01' dj,'非常满意' djmc, 2 cnt from dual union all
select 1 orgid, '财务部' organame, '02' dj,'满意' djmc, 1 cnt from dual union all
select 2 orgid, '综合部' organame, '01' dj,'满意' djmc, 2 cnt from dual)
SELECT tt.organame,
'非常满意' djmc1,
SUM(decode(djmc, '非常满意', cnt, 0)) dj1,
'满意' djmc1,
SUM(decode(djmc, '满意', cnt, 0)) dj2
FROM tt
GROUP BY organame
(
SELECT 1 orgid ,'财务部' orgname ,'01' dj ,'非常满意' djmc, 2 count FROM DUAL
UNION ALL
SELECT 1 orgid ,'财务部' orgname ,'02' dj ,'满意' djmc, 1 count FROM DUAL
UNION ALL
SELECT 1 orgid ,'管理部' orgname ,'02' dj ,'满意' djmc, 2 count FROM DUAL
)
SELECT orgname ,
max(DECODE(djmc,'非常满意',djmc,0)) AS DJ1 ,
max(DECODE(djmc,'非常满意',COUNT,0 )) AS COUNT1 ,
max(DECODE(djmc,'满意',djmc,0 )) AS DJ2 ,
max(DECODE(djmc,'满意',COUNT,0 )) AS COUNT2
FROM TAB
group by orgnameORGNAME DJ1 COUNT1 DJ2 COUNT2
财务部 非常满意 2 满意 1
管理部 0 0 满意 2