小编典典

SQLAlchemy有一种方法可以在删除执行后返回结果

sql

我找不到关于Returning子句的等效解决方案

DELETE FROM items
WHERE sub_item_id IN %(sub_item_ids)s
RETURNING item_id, sub_item_id,

我在SQLAlchemy中做到了:

purge_family = session.query(ItemItem).filter(ItemItem.sub_item_id.in_(sub_item_ids))

.delete(synchronize_session=False)

我需要在执行DELETE语句时返回item_id,sub_item_id集。


阅读 337

收藏
2021-04-07

共1个答案

小编典典

要按原样执行查询,请使用Core构造:

stmt = ItemItem.__table__.delete().\
    where(ItemItem.sub_item_id.in_(sub_item_ids)).\
    returning(ItemItem.item_id, ItemItem.sub_item_ids)

results = session.execute(stmt).fetchall()
2021-04-07