连接两个不相关列中的多个表(Access)



我需要一些帮助,这是我的情况:

我有4张桌子一表1:id_river|name_river

表2:年

表3:nb_catch_a|id_river|年

表4:nb_catch_b|id_river|年

我正试图创建一个查询,列出按id_river and years:分组的nb_catch_a和nb_catch_b

最终表格:id_river|name_river|年份|nb_catch_a|nb_cach_b

如果表3和表4中有年份,为什么需要表2?

我们必须只提取表2中的年份吗?

另外,您希望如何聚合剩余字段?

这是假设你不需要表2 的答案

SELECT A.ID_RIVER
,A.NAME_RIVER
,B.nb_catch_a
,C.nb_catch_b
,C.YEAR

来自表1a在A.ID_RIVER=B.ID_RIVER上加入表3b在A.ID_RIVER=C.ID_RIVER 上加入表4c

如果要联接表2,则需要在年份字段中指定联接。此外,您希望加入表2上的哪个字段?表3还是表4?他们都有年份。因此,很难说加入应该朝哪个方向发展。我需要更多关于你想做什么的信息。这样的事情应该有效,但今年加入是愚蠢的。不知道为什么表2中只有一个字段……由于年份已经出现在表3和表4中,所以这似乎是多余的。也不确定它应该是今年的内联接或左外联接。

Select table1.id_river, table1.name_river, table3.nb_catch_a, table3.year,  table4.nb_catch_b, table4.year from Table1 INNER JOIN table3 on table1.id_river=table3.id_river
INNER JOIN table4 on table1.id_river=table4.id_river 

最新更新