多表查询
手动连接
for uname,email_address in session.query(User.fullname,Address.email_address).filter(User.id==Address.user_id,User.name=="jack"):
print uname
print email_address
自然连接
>>> session.query(User).join(Address).\
... filter(Address.email_address=='jack@google.com').\
... all()
[<User(name='jack', fullname='Jack Bean', password='gjffdd')>]
指定连接方式
query.join(Address, User.id==Address.user_id) # explicit condition
query.join(User.addresses) # specify relationship from left to right
query.join(Address, User.addresses) # same, with explicit target
query.join('addresses') # same, using a string
外连接
query.outerjoin(User.addresses) # LEFT OUTER JOIN

本文主要介绍了如何使用SQLAlchemy在MariaDB中进行多表查询,包括手动连接、自然连接和指定不同类型的外连接操作。
3126

被折叠的 条评论
为什么被折叠?



