PostgreSQL 外部数据包装器模仿约束

问题描述

使用 Postgresql 9.6.9

使用 Postgres 外部数据包装器 https://github.com/postgres/postgres/blob/e1ae40f381d0582981b1e63856bd4b060cfe2d53/src/test/regress/expected/foreign_data.out#L692-L711 时,约束似乎不可用。

我想运行一个按主键分组的查询,并选择同一个表中的其他一些列。当主键约束不存在时,查询不起作用。 https://www.postgresql.org/docs/current/sql-select.html#SQL-GROUPBY

如果分组列(或其子集)是包含未分组列的表的主键,则存在函数依赖。

简单的解决方案是将其他列添加到 GROUP BY,但技术债务使这成为另一个挑战。

即使无法强制执行约束,有没有办法模仿或部分启用约束以使查询有效?

解决方法

不,您必须将其他列添加到 GROUP BY 子句中。我假设“技术债务”是指需要输入所有列。使用智能文本编辑器!