【发布时间】:2011-09-07 16:01:10
【问题描述】:
如何在 SqlAlchemy ORM 中进行动态查询(如果它是正确的名称)。
我使用 SqlAlchemy 作为数据库的抽象,在 python 代码中使用查询,但是如果我需要动态生成这些查询,而不仅仅是设置查询的参数,如“id”?
例如,我需要从链接三个表(如“组织”、“人员”、“员工”)的列表(表名、列名、连接列)生成查询。我怎样才能正确地做到这一点?
例如,我的意思是这个列表: [{'table':'organisation', 'column':'staff_id'}, {'table':'staff', 'column':'id'}]
例如,输出可能包含: 组织 ID、组织名称、组织人员 ID、人员 ID、人员名称 (名称列仅在输出中显示,因为我需要简单的示例,接收表的所有列,并且数组必须设置连接)
【问题讨论】:
-
“我需要从“str”元素数组(表名、列名、连接列)生成查询”。这没有多大意义。请举个例子。
-
Hmm.. 您已经向我们展示了 输入,但是向我们展示预期的输出可能会有所帮助,无论是在等效的 sqlalchemy 语句还是生成的 SQL 方面.我能想到几种解释您输入的方法,每一种都有非常不同的含义。
-
"我的意思是这个数组"...不是数组。这是一个字典列表。
标签: python database orm sqlalchemy