我已经能够使用docshere中显示的相关更新构造来更新表中的一列。在
例如:
sel = select([UpdateTable.column]).\
where(UpdateTable.id == OrigTable.id)
up = update(OrigTable).values(column=sel)
它产生的SQL类似于:
^{pr2}$是否可以使用declarictive或Query Api来更新所选内容的多个列?在
我试图在PostgreSQL中模拟如下内容:
UPDATE origtable
SET
column1 = updatetable.column1,
column2 = updatetable.column2
FROM updatetable
WHERE origtable.id == updatetable.id
编辑:
在当前的SQLAlchemy api中,似乎无法将此语句格式化为单个语句。在
但是,使用两个select的解决方案似乎可以使用here中的解决方案。在
因为这是针对Postgresql的,所以我们可以使用SQLAlchemy的multiple table update支持。该文档仅针对Core,但Query API是在Core之上构建的,我们可以apply that knowledge:
结果是
^{pr2}$相关问题 更多 >
编程相关推荐