在Postgres中使用DISTINCT ON返回哪一行

时间:2017-12-12 07:37:26

标签: postgresql distinct-on

当我在PostgreSQL中使用DISTINCT ON(在django中不同)时,在具有相同字段的行组中检索哪些行?

1 个答案:

答案 0 :(得分:3)

The documentation说:

  

考虑所有表达式相等的一组行   重复,并且只有该组的第一行保留在输出中。   注意"第一行"除非查询,否则集合是不可预测的   在足够的列上排序,以保证唯一的排序   到达DISTINCT过滤器的行。

因此,如果添加ORDER BY子句,则保留该顺序中的第一行。

如果没有ORDER BY子句,则无法确定将保留哪一行。