选择From Multiple tables而不加入SQLAlchemy

时间:2014-04-02 08:31:18

标签: python sql join sqlalchemy

我想只选择另一个表中的一列与另一个表连接,这两个表的连接必须与另外两个表的连接组合(不连接)。

更清楚:

我有两张桌子:

     A                      B
-------------         -----------
 id   | value_a         id  | value_b
  1   |  'abc'           1  |   'xtz'
  2   |  'cde"           2  |  'cfss'

这两个表已加入,然后combined未加入(我不知道该术语是否正确)加上A和新表C

     C                      
-------------         
 id   | value_c        
  1   |  'ccc'          
  2   |  'cdd' 

所以我想做这样的事情:

i = A.join(B,B.c.id==A.c.id)
j = A.join(C,C.c.id== A.c.id)
select = select([A.c.value_a, B.c.value_b, C.c.value_c])\
.select_from(i,j).where(all_filters) #all_filters are some filters I create dynamically

但是select_from(i,j)不起作用,它会产生错误:

Traceback (most recent call last):
  File "scr.py", line 230, in   <module>
    .select_from(i,j).where(all_filters)
TypeError: <lambda>() takes exactly 2 arguments (3 given)

请帮助

0 个答案:

没有答案