CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
(图)邪恶的韩国UMPC 使用 Java 编写数据库应用新规范
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  MS-SQL Server >  基础类

请问如何将同类项目合并汇总?

楼主hejiahuanle()2006-05-04 17:23:31 在 MS-SQL Server / 基础类 提问

类别 项目                                 合计值  
  复杂程度 创新性                       15  
  复杂程度 创新性重要性     6  
  复杂程度 工作负荷                       15  
  复杂程度 工作负荷重要性       6  
  职责范围 工作自由度       15  
  职责范围 工作自由度重要性         6  
   
  请问如何请同类项目合并汇总?如将类别相等,同时项目相等(须将     创新性   与创新性重要性合并,其它以此类推)  
   
  问题点数:20、回复次数:10Top

1 楼wwh999(印钞机V2.0...开发中....)回复于 2006-05-04 17:38:43 得分 0

楼主,你得写个你想要的结果集样式出来才行啊!Top

2 楼xeqtr1982(Visual C# .NET)回复于 2006-05-04 17:39:07 得分 0

楼主能否给出结果样式Top

3 楼hejiahuanle()回复于 2006-05-05 09:56:35 得分 0

我想要的结果如下:  
   
  类别                       项目                 合计值  
  复杂程度             创新性                   21  
  复杂程度             工作负荷                 21  
  职责范围             工作自由度             21  
   
  Top

4 楼paoluo(一天到晚游泳的鱼)回复于 2006-05-05 11:03:58 得分 10

Select    
  类别,  
  Replace(项目,N'重要性','')   As   项目,  
  SUM(合计值)   As   合计值  
  from   TableName  
  Group   By   类别,Replace(项目,N'重要性','')Top

5 楼wwh999(印钞机V2.0...开发中....)回复于 2006-05-05 11:16:18 得分 0

一样没有什么规律可言的...拜托,你提问题能不能提个清楚点的?  
  ------------------------------------------------------------------------------------  
  复杂程度             创新性                   21  
  复杂程度             创新性重要性         6  
   
  就好像上面的两条记录,为什么要取第一条创新性?有规律吗?Top

6 楼paoluo(一天到晚游泳的鱼)回复于 2006-05-05 11:19:22 得分 0

印鈔機,樓主的意思已經表達清楚了啊。可能是他最開始的數據中空格造成你沒看清吧。Top

7 楼paoluo(一天到晚游泳的鱼)回复于 2006-05-05 11:23:45 得分 0

--建立測試環境  
  Create   Table   TEST  
  (类别 Nvarchar(20),  
    项目 Nvarchar(50),  
    合计值 Int)  
  --插入數據  
  Insert   TEST   Select   N'复杂程度',N'创新性',                                 15  
  Union   All   Select   N'复杂程度',N'创新性重要性',                   6  
  Union   All   Select   N'复杂程度',N'工作负荷',                                 15  
  Union   All   Select   N'复杂程度',N'工作负荷重要性',             6  
  Union   All   Select   N'职责范围',N'工作自由度',                           15  
  Union   All   Select   N'职责范围',N'工作自由度重要性',       6  
  --測試  
  Select    
  类别,  
  Replace(项目,N'重要性','')   As   项目,  
  SUM(合计值)   As   合计值  
  from   TEST  
  Group   By   类别,Replace(项目,N'重要性','')  
  --刪除測試環境  
  Drop   Table   TEST  
  --結果  
  /*  
  类别 项目 合计值  
  职责范围 工作自由度 21  
  复杂程度 工作负荷 21  
  复杂程度 创新性 21  
  */Top

8 楼wwh999(印钞机V2.0...开发中....)回复于 2006-05-05 11:24:34 得分 0

一天到晚游泳的鱼,那也叫清楚?晕啊...他都没举个例子出来..还有,楼主提了问题就闪人了,还害得偶们在旁边干着急,,,真是..!  
   
   
  Top

9 楼wwh999(印钞机V2.0...开发中....)回复于 2006-05-05 11:29:47 得分 10

use   pubs  
  --插入一些测试用表和数据  
  if   exists(select   *   from   sysobjects   where   name='tb')   drop   table   tb  
  go  
  create   table   tb(类别   varchar(20),项目   varchar(20),合计值   int)  
  insert   tb   select   '复杂程度','创新性',                       15  
  union   all   select   '复杂程度' ,'创新性重要性',     6  
  union   all   select   '复杂程度' ,'工作负荷',                       15  
  union   all   select   '复杂程度' ,'工作负荷重要性',       6  
  union   all   select'职责范围' ,'工作自由度',       15  
  union   all   select'职责范围' ,'工作自由度重要性',         6  
   
  select   *   from   tb  
  go  
   
  --实现功能的select语句  
   
  select   类别,项目=replace(项目,'重要性',''),合计值=sum(合计值)     from   tb  
  group   by   类别,replace(项目,'重要性','')  
   
  --删除测试数据和临时表  
  drop   table   tb  
   
  Top

10 楼xeqtr1982(Visual C# .NET)回复于 2006-05-05 11:48:44 得分 0

呵呵,已经正解喽!~Top

相关问题

关键词

得分解答快速导航

  • 帖主:hejiahuanle
  • paoluo
  • wwh999

相关链接

  • SQL Server类图书

广告也精彩

反馈

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