CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  VB.NET

请教一条关于汇总的sql

楼主zhmvb(星期六)2006-06-02 10:52:14 在 .NET技术 / VB.NET 提问

表结构:  
  时间 地名         环境情况  
  1 北京   优秀  
  2 北京             良好  
  3                 北京             差  
  4   天津   良好  
  5 天津   良好  
  6                 上海             差  
   
  要求得到的结果:  
  地点     优秀       良好       差  
  北京       1             1             1  
  天津       2             0             0  
  上海       0             0             1  
   
  问题点数:40、回复次数:3Top

1 楼dutguoyi(新鲜鱼排)回复于 2006-06-02 11:05:24 得分 35

create   table   t([date]   int   identity(1,1),place   nvarchar(10),circumstance   nvarchar(10))  
  insert   t   select   N'北京',N'优秀'  
  union   all   select   N'北京',N'良好'  
  union   all   select   N'北京',N'差'  
  union   all   select     N'天津',N'良好'  
  union   all   select   N'天津',N'良好'  
  union   all   select   N'上海',N'差'  
   
  select   place   [地点],  
  sum(case   circumstance   when   N'优秀'   then   1   else   0   end)   [优秀],  
  sum(case   circumstance   when   N'良好'   then   1   else   0   end)   [良好],  
  sum(case   circumstance   when   N'差'   then   1   else   0   end)   [差]  
  from   t  
  group   by   place  
   
  drop   table   t  
  /*  
  地点                   优秀                     良好                     差                        
  ----------   -----------   -----------   -----------    
  上海                   0                       0                       1  
  天津                   0                       2                       0  
  北京                   1                       1                       1  
  */  
  还是去SQL   Server问这样的问题吧Top

2 楼7712190(25458848@163.com)回复于 2006-06-02 11:07:11 得分 5

楼上的回答   类似教科书Top

3 楼zhmvb(星期六)回复于 2006-06-02 13:14:26 得分 0

Select  
  uncd,  
  sum(case   infoty   when   '1'   then   1   else   0   end)   as   早报,  
  sum(case   infoty   when   '2'   then   1   else   0   end)   as   迟报,  
  sum(case   infoty   when   '3'   then   1   else   0   end)   as   漏报,  
  sum(case   infoty   when   '4'   then   1   else   0   end)   as   错报  
  From   ST_INFSMRY_C    
  group   by   uncdTop

相关问题

关键词

得分解答快速导航

  • 帖主:zhmvb
  • dutguoyi
  • 7712190

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo