表结构
t1:
id kindID
1 A
2 B
3 B
4 B
5 Did是自增的,我现在想要的结果是根据kindID是A-D的每项个数比如上面数据,我想要的结果是
A 1个
B 3个
C 0个
D 1个应该怎么写SQL啊?
急急急。。
t1:
id kindID
1 A
2 B
3 B
4 B
5 Did是自增的,我现在想要的结果是根据kindID是A-D的每项个数比如上面数据,我想要的结果是
A 1个
B 3个
C 0个
D 1个应该怎么写SQL啊?
急急急。。
解决方案 »
- asp.net的会话和应用程序分不清楚,求高手解惑。
- 发现一个大问题:用户退出时如何关闭session???特请教一下
- BBS和BLOG中,UBB代码有必要保存在数据库中吗?
- 高手快来,关于ASP.NET配置的问题!!!
- asp.net 中 Request.Form["条目名"] 为什么一直为null?
- 取Json的值
- 为什么ASP.NET中启动出错?
- ASP.net GridView1动态绑定如何分页显示
- 我的程序在A服务器是好的在B服务器发现客户端验证有问题,请赐教!
- ICollection 什么意思?
- 求助!!关于textbox textchanged的问题!!在线等!
- 有没有人在使用DialogExample问问框架下使用刷新问题
没经过试过
select kindID ,COUNT(kindID) from t1 group by kindID
没测试过
我试过这个结果
能查到表中有的A,B,D的个数
但C是0的查不到啊?
就是表中没有C的应该为0,怎样写呢?
select distinct(kindID) from table1
union
select 'C','0个' from
declare @T table ([id] int,[kindID] varchar(1))
insert into @T
select 1,'A' union all
select 2,'B' union all
select 3,'B' union all
select 4,'B' union all
select 5,'D'--select * from @T
--Code
select a.kindid,count(b.kindid) as kindcount from
(select 'A' as kindid
union all select 'B'
union all select 'C'
union all select 'D')
a left join @T b on a.kindid=b.kindid
group by a.kindid--Result
/*kindid kindcount
------ -----------
A 1
B 3
C 0
D 1*/
union
select 'C','0个'
如果A-D中任意的项个数为0,是不是都可以查出来呢?
现在是A-D中哪一个的个数为0是不确定的