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

sql语句再问?请 CrazyFor(太阳下山明朝依旧爬上来) 进来

楼主LFreeX(迷茫)2003-08-01 20:27:06 在 MS-SQL Server / 疑难问题 提问

表1  
  vs_id                     voy_id                           fee_id               money               pay_fee_id  
    1                               1                                     1                         20                         1  
    1                               1                                     2                         30                         1  
    1                               1                                     1                         20                         1  
    1                               1                                     2                         10                         1        
    1                               1                                     1                           50                       2    
    1                               1                                     2                         10                         2  
     
  表2  
  pay_fee_id             pay_name  
    1                               aaa  
    2                               bbb  
   
  表1和表2的pay_fee_id相关联  
   
  查询后结果要求如下  
  vs_id       voy_id           money1                                             money2                 pay_name  
  1                   1                 40(20+20)                                     40(30+10)                   aaa  
  1                   1                 50                                                   10                                 bbb  
   
  分组是按vs_id   voy_id   pay_fee_id 问题点数:50、回复次数:4Top

1 楼caiyunxia(夏才云)回复于 2003-08-01 20:30:40 得分 30

select   vs_id   ,   voy_id   ,sum(case   when   feeid   =1   then   money   else   0   end)   as   money1   ,  
  sum(case   when   feeid   =1   then   money   else   0   end)   as   money2,   pay_name  
  from     表1   a,表2   b  
  where   a.pay_fee_id=b.pay_fee_id  
  group   by   vs_id   ,   voy_id   ,pay_name  
  Top

2 楼caiyunxia(夏才云)回复于 2003-08-01 20:31:01 得分 10

修改  
  select   vs_id   ,   voy_id   ,sum(case   when   feeid   =1   then   money   else   0   end)   as   money1   ,  
  sum(case   when   feeid   =2   then   money   else   0   end)   as   money2,   pay_name  
  from     表1   a,表2   b  
  where   a.pay_fee_id=b.pay_fee_id  
  group   by   vs_id   ,   voy_id   ,pay_name  
  Top

3 楼ldy(罗大佑)回复于 2003-08-01 20:32:21 得分 0

我觉得除了水园,就是这里星多了  
  呵呵  
  Top

4 楼pengdali()回复于 2003-08-01 20:32:46 得分 10

select   vs_id,voy_id,sum(case   when   fee_id=1   then   [money]   end)   money1,sum(case   when   fee_id=2   then   [money]   end)   money2,(select   pay_name   from   表2   where   pay_fee_id=表1.pay_fee_id)   pay_name   from   表1   group   by   vs_id,voy_id,pay_fee_idTop

相关问题

  • 求SQL语句
  • sql语句。
  • sql语句?
  • sql 语句?
  • 求SQL语句
  • ***求SQL语句***
  • sql语句??
  • sql语句
  • sql语句
  • SQL语句

关键词

  • vs
  • voy
  • pay
  • fee
  • money
  • sum
  • then money else0
  • casewhen feeid

得分解答快速导航

  • 帖主:LFreeX
  • caiyunxia
  • caiyunxia
  • pengdali

相关链接

  • SQL Server类图书

广告也精彩

反馈

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