合并查询急救阿,想了几天都没有想出来.100分送上

dr80 2003-08-11 04:56:58
a,b,c 三个表. c表有个主键id, a,b表的外键为 id, a,b表的结构完全一样. a表是用来保存今年的数据,b表用来保存往年的数据.a,b表中的"Money"这个字段是我关心的.

c表有个日期字段, 我要查询从某一个时间段里的"money"字段的和.
因为这个时间段不定,可能所有数据都在a表,或者都在b表,或者两个表的中都有.所以我需要同时从这个两个表中提取数据.

select sum(a.money)+ sum(b.money) as 金额合计 from a,b,c where ........

请哪位大侠帮我完成这个语句, 谢谢了~ 急!
...全文
18 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
dr80 2003-08-18
  • 打赏
  • 举报
回复
是我没有说清楚,我是想通过查询得到以下的结果:
项目名 上期金额汇总 本期金额汇总

上期金额汇总来自a表,本期金额汇总来自b表 ,都有id字段和c表的id字段联系, 日期字段是在
c表中,因为这个查询的启止日期是用户随意输入 ,假设 所有的数据是在2003年4月1日--2003年5月10日之间的。 那么当用户选择启止日期时,可能落在这个区间的左边或者右边,这样a,b表都有可能为空。因为access不支持外连接,所以无论是左连还是右连都有使查询为空的可能,这个是不满足要求的。所以我需要一个解决的方法。
mgan 2003-08-16
  • 打赏
  • 举报
回复
结构不同 可以用这个啊
select sum(a.money)+ sum(b.money) as 金额合计 from a,b,c
where c.id = a.id and c.id = b.id and c.日期>=#日期1# and c.日期<=#日期2#
zjcxc 2003-08-16
  • 打赏
  • 举报
回复
结构不同,至少都包含id和money字段吧?而你统计的只与这两个字段有关.
试试:

select sum(a.money) as 合计
from(
select id,money from a
union all
select id,money from b) aa inner join c on aa.id=c.id
where #2001-01-12#<=c.日期 and c.日期>=#2002-01-02#
dr80 2003-08-15
  • 打赏
  • 举报
回复
大侠们,帮帮我吧。
dr80 2003-08-12
  • 打赏
  • 举报
回复
在各位,特别是 victorycyz和: zjcxc兄的帮助下,这个问题已经解决,但是同时遇到一个更麻烦的问题了. access好像不支持外连接, 还是a,b,c表 ,还是ID为c表的主键,
为a,b的外键,但是a,b结构不同,我想还是通过id字段把a,b连接起来.本来一个外连接
就可以搞定,但是access不支持.
Rivulet119 2003-08-11
  • 打赏
  • 举报
回复
select sum(a.money)+ sum(b.money) as 金额合计 from a,b,c
where c.id = a.id and c.id = b.id and c.日期>=#日期1 and c.日期<=#日期2
zjcxc 2003-08-11
  • 打赏
  • 举报
回复
select sum(a.money) as 合计
from(
select * from a
union all
select * from b) aa inner join c on aa.id=c.id
where #2001-01-12#<=c.日期 and c.日期>=#2002-01-02#
victorycyz 2003-08-11
  • 打赏
  • 举报
回复

select c.id,sum(ta.money) as summoney from c left join (select * from a union select * from b) as ta on c.id=ta.id group by c.id where c.starttime>=ta.starttime and c.endtime<=ta.endtime
zhengjialon 2003-08-11
  • 打赏
  • 举报
回复
首先做一个联合查询把A和B联合在一块再做吧。

7,714

社区成员

发帖
与我相关
我的任务
社区描述
Microsoft Office Access是由微软发布的关系数据库管理系统。它结合了 MicrosoftJet Database Engine 和 图形用户界面两项特点。
社区管理员
  • Access
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧