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

一个基础问题,请指教

楼主cstudying(努力学习C#)2006-07-01 17:57:00 在 MS-SQL Server / 基础类 提问

一个参数   VALUE   有三个值   :   请假   \   缺勤   \早退  
  如果   我想   按     姓名       请假总数     缺勤总数   早退总数  
  这样用一条SQL语句来得出一段时间的所以人员的数据,这句话应该怎么写     请指教  
   
  问题点数:10、回复次数:5Top

1 楼cstudying(努力学习C#)回复于 2006-07-01 23:39:20 得分 0

有人回答吗?  
  谢谢  
  很着急的一问题  
  Top

2 楼cstudying(努力学习C#)回复于 2006-07-01 23:39:44 得分 0

做的一小程序马上要用了Top

3 楼hellowork(一两清风)回复于 2006-07-02 02:00:06 得分 5

假设保存"请假\缺勤\早退"的列名为value:  
  select   姓名,'请假总数'=count(case   value   when   '请假'   then   姓名   else   null   end),  
  '缺勤总数'=count(case   value   when   '缺勤'   then   姓名   else   null   end),  
  '早退总数'=count(case   value   when   '早退'   then   姓名   else   null   end)  
  from   tablename      
  where   ...   group   by   姓名             /*将"..."替换成条件*/Top

4 楼LouisXIV(夜游神)回复于 2006-07-02 02:06:52 得分 5

--参数?如果是字段的话可以用类似下面的语句  
   
  select  
  A.EmployeeName   as   姓名,  
  isnull(count(case   ItemName   when   '请假'   then   1   else   0   end),0)   as   请假总数,  
  isnull(count(case   ItemName   when   '缺勤'   then   1   else   0   end),0)   as   缺勤总数,  
  isnull(count(case   ItemName   when   '早退'   then   1   else   0   end),0)   as   早退总数  
  from  
  Emplyee_Master   A  
  left   outer   join  
  Work_Attendenct   B  
  on  
  A.EmployeeID=B.EmployeeID  
   
   
  --BTW   如果LZ很急的话,请尽量把自己的问题表述清楚,当然最好用词也准确点,  
  --至于不要有错别字则是最基础的要求了,要知道欲速则不达,他人更好地理解你的问题后  
  --才能及时给你准确的回复Top

5 楼LouisXIV(夜游神)回复于 2006-07-02 02:10:40 得分 0

--又忘写group了  
   
   
  select  
  A.EmployeeName   as   姓名,  
  isnull(count(case   ItemName   when   '请假'   then   1   else   0   end),0)   as   请假总数,  
  isnull(count(case   ItemName   when   '缺勤'   then   1   else   0   end),0)   as   缺勤总数,  
  isnull(count(case   ItemName   when   '早退'   then   1   else   0   end),0)   as   早退总数  
  from  
  Emplyee_Master   A  
  left   outer   join  
  Work_Attendenct   B  
  on  
  A.EmployeeID=B.EmployeeID  
  Group   By    
  A.EmployeeNameTop

相关问题

关键词

得分解答快速导航

  • 帖主:cstudying
  • hellowork
  • LouisXIV

相关链接

  • SQL Server类图书

广告也精彩

反馈

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