我有一个数据表,里面有个字段cust_type客户类型,当值为'1'或是'A'时表示全球通,'3'和'C'时表示神州行,'M'表示动感地带.我现在要按cust_type统计用户量,显示格式如用户类型 用户量
------------------------------
全球通 12323
神州行 234234
动感地带 3232344用户量可以用count(*)
------------------------------
全球通 12323
神州行 234234
动感地带 3232344用户量可以用count(*)
解决方案 »
- 请教:oracle 存储过程 插入一条记录 怎么得到当前的GUID【急】
- oracle 中触发器的简单用法,谢谢
- 如何用oracle 9i建库
- ——————超级头痛的聚合函数问题,前辈们赐教了,谢谢
- 关于sql语句小问
- 写了一点游标的,执行后,好多错啊,帮我改改!!
- 对于违反完整性约束条件的操作如何进行事先定义处理?
- 启动oracle服务
- 【牛人看一下吧】☆★☆★☆ 菜问题:为什么tablespace里面凭空出来好几十个表???☆★☆★☆
- 求救,大神!这句sql怎么改
- Oracle中最大数据类型?
- 问题很着急.net2003连接oracle9i2捕捉异常发现"无法加载 DLL (oci.dll)
create table cust (cust_no int ,cust_type varchar(2))
insert into cust values(1,'A');
insert into cust values(2,'1');
insert into cust values(3,'A');
insert into cust values(4,'M');
insert into cust values(5,'M');
insert into cust values(6,'C');
insert into cust values(7,'3');
insert into cust values(8,'C');
查询sql:
select 客户类型,count(1) 用户量 from
(
select case when (cust_type='A' or cust_type='1') then '全球通' when (cust_type='3' or cust_type='C') then '神州行'
else '动感地带' end 客户类型
from cust
) temp
group by 客户类型结果:
客户类型 用户量
动感地带 2
全球通 3
神州行 3
COUNT(*) AS 用户量
FROM TABLE_NAME
GROUP BY DECODE(CUST_TYPE,'M','动感地带','1','全球通','A','全球通','3',神州行,'C','神州行','其他')