在我的查询中使用许多与左外连接相关的表,我想知道是否有任何方法可以轻松地将查询结果作为基本数组,例如在 phpmyadmin 中可以预期的类型(我不是指布局)。
给定 3 个表,所有表都被映射,我目前只将第一个表的结果作为对象,如果 table2 有任何结果,我必须逐行测试表 3 的结果,依此类推:
list_res_table1 = DBSession.query(table1).outerjoin(table2).outerjoin(table3).all()
for res_table1 in list_res_table1:
if res_table1.relationship_to_table2:
list_res_table2 = res_table1.relationship_to_table2
for res_table2 in list_res_table2:
if res_table2.relationship_to_table3:
etc.
获得可直接访问的对象列表会很棒,例如:
((table1, table2, None) #=> no result for table3
(table1, None, None) #=> no result for table2
(table1, table2, table3)) #=> results for all tables