我有疑问:
q = Session.query(func.array_agg(Order.col))
Run Code Online (Sandbox Code Playgroud)
编译后的查询将是:
SELECT array_agg(order.col) FROM orders
Run Code Online (Sandbox Code Playgroud)
我想动态替换现有的列。替换查询后必须是:
SELECT group_concat(orders.col) FROM orders
Run Code Online (Sandbox Code Playgroud)
我必须使用会话和模型。我不必使用 SQLAlchemy 核心。我不必使用子查询。当然,还可以有其他一些列,但我只需要替换一列。我试图替换column_descriptions属性中的对象,我尝试使用q.selectable.replace(或类似的东西,抱歉,但我不记得正确的名称),但我没有得到正确的结果。
正确的方法:
q = Session.query(func.array_agg(Order.col))
q.with_entities(func.group_concat(Order.col))
SELECT group_concat(orders.col) FROM orders
Run Code Online (Sandbox Code Playgroud)