| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1147 人关注过本帖
标题:求SQL语句帮助
只看楼主 加入收藏
yll148
Rank: 2
等 级:论坛游民
威 望:3
帖 子:268
专家分:15
注 册:2012-7-3
结帖率:87.5%
收藏
 问题点数:0 回复次数:7 
求SQL语句帮助
A表有 客户编码,客户名称  
b表有 客户编码,发出金额
C表有 客户编码,回款金额
D表有 客户编码,开票金额

需要A表与b,c,d表连接,并且,b,c,d金额有条件的求和生成一查询表,请各位帮助,谢谢!
2016-12-04 15:57
sash
Rank: 4
等 级:业余侠客
威 望:6
帖 子:65
专家分:249
注 册:2014-4-25
收藏
得分:0 
SELECT 客户编码,客户名称,ISNULL(合计发出金额,0) AS合计发出金额,ISNULL(合计回款金额,0) AS 合计回款金额,ISNULL(合计发票金额,0) AS 合计发票金额 FROM a LEFT JOIN (SELECT 客户编号,SUM(发出金额) AS 合计发出金额 FROM b GROUP BY 客户编号) btmp ON a.客户编号=btmp.客户编号 LEFT JOIN (SELECT 客户编号,SUM(回款金额) AS 合计回款金额 FROM c  GROUP BY 客户编号) ctmp ON a.客户编号=ctmp.客户编号 LEFT JOIN (SELECT 客户编号,SUM(发票金额) AS 合计发票金额 FROM d GROUP BY 客户编号) dtmp ON a.客户编号=dtmp.客户编号
(注意以上语句是用于SQL server的,如果用于Foxpro9则把上述语句中ISNULL(合计发出金额) AS 合计发出金额,改为IIF(ISNULL(合计发出金额),0,合计发出金额) AS 合计发出金额 ,其它两个ISNULL(......)字段也作相应修改就行了。)

[此贴子已经被作者于2016-12-4 19:59编辑过]

2016-12-04 19:49
yll148
Rank: 2
等 级:论坛游民
威 望:3
帖 子:268
专家分:15
注 册:2012-7-3
收藏
得分:0 
可是b,c,d三个表求和都是有where条件的,又该怎么办?谢谢
2016-12-04 20:12
yll148
Rank: 2
等 级:论坛游民
威 望:3
帖 子:268
专家分:15
注 册:2012-7-3
收藏
得分:0 
生成的表为客户编码,客户名称,发出金额,开票金额,回款金额
2016-12-04 20:14
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10607
专家分:43186
注 册:2014-5-20
收藏
得分:0 
还能具体点吗?数据?条件?
2016-12-04 20:46
sash
Rank: 4
等 级:业余侠客
威 望:6
帖 子:65
专家分:249
注 册:2014-4-25
收藏
得分:0 
SELECT 客户编码,客户名称,ISNULL(合计发出金额,0) AS合计发出金额,ISNULL(合计回款金额,0) AS 合计回款金额,ISNULL(合计发票金额,0) AS 合计发票金额 FROM a LEFT JOIN (SELECT 客户编号,SUM(发出金额) AS 合计发出金额 FROM b WHERE 字段=条件 GROUP BY 客户编号) btmp ON a.客户编号=btmp.客户编号 LEFT JOIN (SELECT 客户编号,SUM(回款金额) AS 合计回款金额 FROM c WHERE 字段=条件 GROUP BY 客户编号) ctmp ON a.客户编号=ctmp.客户编号 LEFT JOIN (SELECT 客户编号,SUM(发票金额) AS 合计发票金额 FROM d WHERE 字段=条件 GROUP BY 客户编号) dtmp ON a.客户编号=dtmp.客户编号
(注意以上语句是用于SQL server的,如果用于Foxpro9则把上述语句中ISNULL(合计发出金额) AS 合计发出金额,改为IIF(ISNULL(合计发出金额),0,合计发出金额) AS 合计发出金额 ,其它两个ISNULL(......)字段也作相应修改就行了。)
2016-12-06 07:55
中国龙王
Rank: 5Rank: 5
等 级:贵宾
威 望:16
帖 子:484
专家分:283
注 册:2006-5-17
收藏
得分:0 
呵呵..这家伙一个东东发两个做什么

不要为了打发无聊而做无聊的事!不要在虚幻的世界里做虚幻的事!
2016-12-06 17:56
yll148
Rank: 2
等 级:论坛游民
威 望:3
帖 子:268
专家分:15
注 册:2012-7-3
收藏
得分:0 
6楼的朋友给的句子不能运行啊
2016-12-06 19:04
快速回复:求SQL语句帮助
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.026024 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved