首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

Sql语句获取 统计值解决方案

2012-05-01 
Sql语句获取 统计值现有张表 Table1字段[uId],[uName],[p1_weiBo],[p2_wangYi],[p3_renRen],[p4_douBan],[

Sql语句获取 统计值
现有张表 Table1
字段 [uId]
  ,[uName]  
  ,[p1_weiBo]
  ,[p2_wangYi]
  ,[p3_renRen]
  ,[p4_douBan]
  ,[p5_youKu]

其中
[p1_weiBo] ,[p2_wangYi],[p3_renRen],[p4_douBan],[p5_youKu]
就2个数值 Yes 或者 No

我现在想用一句Sql语句,获取 用户P1...P5的 Yes 的数量.

请高人指点,谢谢



[解决办法]

SQL code
select [uId]  ,[uName] ,(case when [p1_weiBo]='Yes' then 1 else 0 end)+(case when [p2_weiBo]='Yes' then 1 else 0 end)+(case when [p3_weiBo]='Yes' then 1 else 0 end)+(case when [p4_weiBo]='Yes' then 1 else 0 end)+(case when [p5_weiBo]='Yes' then 1 else 0 end) as NUMfrom Table1
[解决办法]
SQL code
select  sum(case weiBo when 'yes' then 1 else 0 end) as 数量from  (   select  p1_weiBo from Table1   union all   select  p2_weiBo from Table1   union all   select  p3_weiBo from Table1   union all   select  p4_weiBo from Table1   union all   select  p5_weiBo from Table1)t 

热点排行