是这样的,我有3个数据表,table1,table2,table3
table1的结构是这样的:id 是自动序号
spr sprm id
1 阿弟 1
2 阿瑟 2
3 撒旦 3
0 空 4
table2的结构是这样的:id 是自动序号
yqr yqrm id
1 阿瑟 1
2 阿弟 2
3 撒旦 3
4 健康 4
0 空 5
table3的结构是这样的:id 是自动序号
spr yqr zdfje id
1 0 12 1
2 0 1212 2
3 0 1213 3
2 0 1212 4
1 0 1212 5
2 0 12121 6
2 0 833 7
3 0 3245 8
3 0 43534 9
0 1 2432 11
0 1 3232 12
0 3 2432 13
0 3 3242 14
0 2 3243 15
0 1 3212 16
0 3 3132 17
0 1 3232 18
0 2 3232 19
0 1 432 20
现在需要列出这样的结果,
sprm与yqrm相等的所有zdfje汇总!
例如:
sprm+yqrm zdfje
阿瑟
阿弟
撒旦
健康
请问,这应该如何实现呢?谢谢大家!
table1的结构是这样的:id 是自动序号
spr sprm id
1 阿弟 1
2 阿瑟 2
3 撒旦 3
0 空 4
table2的结构是这样的:id 是自动序号
yqr yqrm id
1 阿瑟 1
2 阿弟 2
3 撒旦 3
4 健康 4
0 空 5
table3的结构是这样的:id 是自动序号
spr yqr zdfje id
1 0 12 1
2 0 1212 2
3 0 1213 3
2 0 1212 4
1 0 1212 5
2 0 12121 6
2 0 833 7
3 0 3245 8
3 0 43534 9
0 1 2432 11
0 1 3232 12
0 3 2432 13
0 3 3242 14
0 2 3243 15
0 1 3212 16
0 3 3132 17
0 1 3232 18
0 2 3232 19
0 1 432 20
现在需要列出这样的结果,
sprm与yqrm相等的所有zdfje汇总!
例如:
sprm+yqrm zdfje
阿瑟
阿弟
撒旦
健康
请问,这应该如何实现呢?谢谢大家!
解决方案 »
- 求ExpressBar的使用帮助!(或使用方法或教程或使用步骤……
- 关于“QQ MUSIC”的简单问题!
- 请问使用Delphi 7的dbExpress连接SQLServer2000,最后软件打包需要捎带上那些DLL和其他文件?
- idhttp的问题???
- 弱问:adodataset中如何移动记录?
- ★★★★★★★★100分!★★ 怎么知道某个TCP端口是否被占用? ★★★★★★
- 无聊5.1大派分 送出510分~ 之三
- 数据存储问题
- HELP ME 一下!谢谢! :(
- 寻可将DataSet写入Excel的控件(for Delphi 5)
- 百思不得其解。。。望指路
- 如何在程序中使用Mo加载Autocad的DWG或者DXF文件?顶者有分!!!
select sum(zdfje) from table3 a
left join table1 b on a.spr=b.spr
left join table2 c on a.yqr=c.yqr
where b.sprm=c.yqrm
where e.sprm=f.yqrm
group by e.sprm不知道搂住是不是这个意思
left join table1 b on a.spr=b.spr
left join table2 c on a.yqr=c.yqr
where b.sprm=c.yqrm group by b.sprm
datet jddw spr yqr jbr jcdd bz zdfje id
1999-01-13 7 0 7 0 1 1 ¥284.00 13
1999-01-13 8 2 0 0 1 2 ¥228.00 14
1999-01-13 8 8 0 0 1 1 ¥279.00 15
1999-01-13 4 0 6 0 1 1 ¥360.00 16
1999-01-13 8 9 0 0 1 4 ¥255.00 17
1999-02-28 8 1 0 17 5 1 ¥1,303.00 18
1999-01-13 8 0 8 0 1 1 ¥240.00 19
1999-01-13 8 0 9 0 1 5 ¥180.00 20
1999-01-13 8 0 5 0 1 1 ¥229.00 21
1999-01-13 8 0 5 0 1 1 ¥420.00 22
表examine
sprm spr spbg id
王明 1 No 49
地方 2 No 50
计划 3 No 51
呵呵 4 No 52
三分 5 No 53
斯蒂芬 6 No 54
毒素发 7 No 55
斯蒂 8 No 56
其他 0 No 57表treat
yqrrm ypr yqbg id
地方 1 No 49
计划 2 No 50
王明 3 No 51
斯蒂芬 4 No 52
三分 5 No 53
呵呵 6 No 54
毒素发 7 No 55
发给 8 No 56
和文 9 No 57
其他 0 No 58现在想列出所有的sprm和yqrm的zdfje汇总,请问该如何实现呢?我作个每个sprm与yqrm的分别汇总,语句如下:
select examine.sprm,(select sum(master.zdfje) from master where master.spr=examine.spr) from examine
select treat.yqrm,(select sum(master.zdfje) from master where master.yqr=treat.yqr) from treat
现在需要做两个查询结果的汇总,请大家帮帮我,该如何实现呢?
sprm和yqrm又怎么区分?
如果相同,保留一个!
UNION 的结果集列名与 UNION 运算符中第一个 SELECT 语句的结果集中的列名相同。另一个 SELECT 语句的结果集列名将被忽略。默认情况下,UNION 运算符从结果集中删除重复的行。如果使用 ALL 关键字,那么结果中将包含所有行并且将不删除重复的行。
(SELECT * FROM TableA
UNION ALL
SELECT * FROM TableB
)GROUP BY 和 HAVING 子句只能在单独的 SELECT 语句中指定。
select esprm,sum(mzdfje) from (select examine.sprm as esprm,(select sum(master.zdfje) from master where master.spr=examine.spr) as mzdfje from examine
union all
select treat.yqrm,(select sum(master.zdfje) from master where master.yqr=treat.yqr) from treat) group by esprm
可以实现我要的功能!
谢谢大家!
如果大家有什么好的办法,可以告诉我!
谢谢大家!