2012-02-07 40 views
0

使用Access 2010.假设我有三个表:dogscatscatChases。我的目标是创建一个查询,告诉我,每只狗和每只猫,该狗是否追赶了那只猫。如何将笛卡尔产品留在另一张桌子上?

我想我必须使用的dogscats笛卡尔积,是因为我想为所有可能的组合状态,然后离开加入catChases,如下:

select 
dog,cat,chase 
from 
dogs,cats 
left join 
catChases 
on 
dogs.dog=catChases.dog 

,但只是给我错误信息: Syntax error in JOIN operation.

那么我该如何将另一个表格连接到笛卡尔产品?

+0

不要ü想知道所有的狗追,所有的猫是由dogs.Your问题追赶不清的猫或。 – Teja 2012-02-07 21:27:38

回答

3

试试这个:

select x.dog, x.cat,cs.chase 
from 
    (select dog 
      ,cat 
    from dogs, cats) x 
left join catChases cs on cs.dog=x.dog and x.cat=cs.cat 
+0

'AND cs.cat = x.cat',想必,或者你会加入给定的狗和猫的每个组合*全部*狗的追逐... – 2012-02-07 21:21:11

+0

@djacobson谢谢,更新。 – Icarus 2012-02-07 21:23:47

+0

解决!非常赞赏。 – sigil 2012-02-07 21:45:50

相关问题