distinct与distinct on的区别与联系
1. distinct的用法
语法:select distinct 列名[, 列名...] from 表名
distince作用: 列内去重————去掉某一(多)列中重复的值
2. distinct on的用法
实现从每个分组中取最XXX的一条数据
语法:select distinct on (分组列名) 列名[, 列名...] from 表名
distince on作用: 组内去重————把记录根据" (分组列名)" 的值进行分组,并返回分组后每一组的第一行。
a. 如果没有使用order by子句,则返回的第一条数据是随机的。
b.使用了order by子句后,则返回的第一条数据是确定的,可以实现取最XXX的一条数据