如何在pony orm中使用子查询进行查询
SELECT *
FROM child_table
WHERE child_table.masterno IN (SELECT masterno
FROM mastertable
WHERE mastertable.recorddate > SYSDATE -1)
换句话说。我想做点什么
^{pr2}$我搞错了
pony.orm.sqltranslation.IncomparableTypesError: Incomparable types 'int' and 'mastertable' in expression: ct.masterno in master_result
哪里有大师的成绩
print(type(master_result))
<;'小马。orm。核心.QueryResult'>
是的,通过Pony API,您将从
select()
和filter()
函数中获得QueryResult
对象。如果你想从那个查询中得到实体,你可以改变你的行master_result = target_model.mastertable.select()\ .filter(lambda mt: mt.recorddate > DATE)
到
master_result = target_model.mastertable.select()\ .filter(lambda mt: mt.recorddate > DATE)[:] <- this will fetch objects
另一种方法可以将
QueryResult
转换为list
,就像results = list(master_result)
。您还可以迭代QueryResult对象,并将实体对象作为项获取。for mastertable in mastertable.select(): mastertable.recordtable = *smth*
相关问题 更多 >
编程相关推荐