当我DISTINCT ON
在 PostgreSQL 中使用(在 django 中不同)时,在具有相同字段的行组中检索了哪些行?
1 回答
3
文档说:
所有表达式都相等的一组行被认为是重复的,并且只有该组的第一行保留在输出中。请注意,除非查询在足够多的列上排序以保证到达
DISTINCT
过滤器的行的唯一顺序,否则集合的“第一行”是不可预测的。
因此,如果您添加ORDER BY
子句,则会保留该顺序的第一行。
如果没有ORDER BY
子句,就无法知道将保留哪一行。
于 2017-12-12T08:06:10.310 回答