日期:2014-05-16 浏览次数:20892 次
select 所属部门,count(所属部门) 终端总数,
sum(decode(在线状态,'在线',1,0)) 在线数量,
sum(decode(在线状态,'不在线',1,0)) 不在线数量
from tb1
group by 所属部门
------解决方案--------------------
SQL> show user
USER 为 "SCOTT"
SQL> ed
已写入 file afiedt.buf
1 CREATE TABLE tbs(
2 日期 DATE,
3 所属部门 VARCHAR2(20),
4 使用单位 VARCHAR2(20),
5 在线状态 VARCHAR2(10)
6* )
SQL> /
表已创建。
SQL> @c:\sql.sql
已创建 1 行。
已创建 1 行。
已创建 1 行。
已创建 1 行。
已创建 1 行。
SQL> select * from tbs;
日期 所属部门 使用单位 在线状态
-------------- -------------------- -------------------- ----------
12-2月 -12 西山分局 河口派出所 不在线
12-2月 -12 西山分局 江山派出所 在线
12-2月 -12 呈贡分局 派出所1 不在线
12-2月 -12 呈贡分局 派出所2 不在线
12-2月 -12 呈贡分局 派出所3 不在线
SQL> ed
已写入 file afiedt.buf
1 select 所属部门,count(所属部门) 终端总数,
2 sum(decode(在线状态,'在线',1,0)) 在线数量,
3 sum(decode(在线状态,'不在线',1,0)) 不在线数量
4 from tbs
5* group by 所属部门
6 /
所属部门 终端总数 在线数量 不在线数量
-------------------- ---------- ---------- ----------
西山分局 2 1 1
呈贡分局 3 0 3
SQL>