我希望能够进行连接并从结果中的两个表中获取特定字段。
我正在做以下事情:
from sqlalchemy import or_, and_, desc
from sqlalchemy.ext.sqlsoup import SqlSoup
db = SqlSoup('mysql://localhost/mydb')
join = (db.table_B, db.table_B.id==db.table_A.id)
query = db.table_A.join(join)
for entry in query:
print entry
对于每个结果,entry
包含table_B
的所有字段,并且不会为table_A
提供任何字段。我意识到这种情况在默认情况下会因为字段名称不明确而发生。但是,我想手动指定FROM子句来覆盖此行为。我查看了文档,更改FROM子句似乎并非易事。我无法成功地做到这一点。
如果有人能够建议我对上述代码进行正确修改,以便entry.my_col
my_col
table_A
中的字段为{{1}},我将不胜感激。
谢谢!
答案 0 :(得分:0)
好的,我想出来了。问题是我正在查看SqlAlchemy文档,当时我真的需要SqlSoup文档。
我在这里找到了一个很好的连接示例:http://docs.sqlalchemy.org/en/rel_0_7/orm/extensions/sqlsoup.html
当我尝试按照示例中的描述进行操作时,我会得到所有需要的字段。