日期:2014-05-18 浏览次数:20691 次
CREATE TABLE [rjh] (
[id] [decimal](18, 0) IDENTITY (1, 1) NOT NULL ,
[d_id] [decimal](18, 0) NOT NULL ,
[rq] [datetime] NOT NULL ,
[jth] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
[bcl] [int] NULL ,
[zhong] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
[ye] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
[zao] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
[bz] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL
) ON [PRIMARY]
insert into rjh(d_id,rq,jth,bcl,zhong,ye,zao,bz) values(1,'2012-3-26','c11',550,'','停','','')
insert into rjh(d_id,rq,jth,bcl,zhong,ye,zao,bz) values(5,'2012-3-26','c12',650,'','','停','停')
insert into rjh(d_id,rq,jth,bcl,zhong,ye,zao,bz) values(5,'2012-3-26','c13',750,'','停','','停')
insert into rjh(d_id,rq,jth,bcl,zhong,ye,zao,bz) values(4,'2012-3-26','c14',850,'','','','停')
insert into rjh(d_id,rq,jth,bcl,zhong,ye,zao,bz) values(5,'2012-3-26','c15',550,'','','停','')
insert into rjh(d_id,rq,jth,bcl,zhong,ye,zao,bz) values(5,'2012-3-26','c16',450,'','','','')
insert into rjh(d_id,rq,jth,bcl,zhong,ye,zao,bz) values(4,'2012-3-26','c14',850,'','','','停')
insert into rjh(d_id,rq,jth,bcl,zhong,ye,zao,bz) values(5,'2012-3-26','c15',550,'','','停','')
insert into rjh(d_id,rq,jth,bcl,zhong,ye,zao,bz) values(6,'2012-3-26','c16',450,'','','','')
GO
需要查询出 where d_id=5 , zhong,ye,zao 3个字段等于'停'的个数总和 结果应该是 6 ,求教怎么写sql语句
select sum(case when zhong='停' then 1 else 0 end)
+ sum(case when ye='停' then 1 else 0 end)
+ sum(case when zao='停' then 1 else 0 end)
from tb
where d_id=5