2014-10-02 55 views
0

我有一个uploads表和upload_files表。使用模型Upload和UploadFiles。 upload_files有一个upload_id字段。上传模型与UploadFiles建立了关系。SQLAlchemy查找与现有关系的所有行

我想要做的是找到所有upload_files中现有条目的上传。

基本上这样的:

SELECT * FROM uploads WHERE id IN (SELECT upload_id FROM upload_files) 

但使用SQLAlchemy的车型。

任何人都可以指向正确的方向吗?

回答

0

您可以使用此查询:

query = Upload.query.filter(Upload.id == UploadFile.upload_id) 

然后你可以使用query.allquery.any或查询对象上的其他方法。

+0

谢谢。这很简单,它实际上工作:) 我还添加了一个group_by(Upload.id)来减少从数据库回来的记录数由python处理。 – dave9191 2014-10-02 23:10:25