Postgres不能在in子句中编译查询(不能确定子查询中的表上是否存在列),我引用了一个示例查询 select * from table_a where (id is null or id notin (select distinct id from table_b)) 这个查询在生产环境中运行得很好,但是发现了一个数据缺陷,并意识到table_b中根本没有列id,即使查询运行时没有任何编译问题
假设child_count定期更新(或通过PostgreSQL中的实例化视图可用),例如使用以下update语句:
update parents p set child_count = pc.count除了这是一个需要扫描子代的昂贵查询,但我知道使用child_count字段可以更便宜地完成它-冒着可能过期的风险,但我并不担心这一点。有没有办法编写一个查询(最好是postgresql),使用父对象的