postgresql根据某个字段去重获取整行数据

背景:在一些情况下我们需要对数据进行去重统计,group by就行,但是一些特殊情况下我们要根据某个字段去重之后获取非聚合字段的值,这个时候在mysql非严格模式下可以直接执行,但是在严格模式和postgresql里面是直接报错的,不能直接查询非聚合列
这个情况下postgresql里面有个语法可以支持到

select distinct on(age) * from t_user;

在这里插入图片描述
另外一中写法是分组topN也可以实现类似的能力

SELECT * 
FROM (
    SELECT *,
           ROW_NUMBER() OVER (PARTITION BY age ORDER BY id DESC) AS row_num
    FROM t_user
) AS user_data
WHERE row_num = 1;

相关推荐

  1. list排序根据某个字段

    2024-06-09 00:30:04       16 阅读
  2. DataFrame python 根据某个字段排序

    2024-06-09 00:30:04       15 阅读
  3. kotlin 多字段

    2024-06-09 00:30:04       29 阅读
  4. 获取 PostgreSQL 某个表的定义

    2024-06-09 00:30:04       14 阅读
  5. 判断数组中对象的某个值是否有相同的并

    2024-06-09 00:30:04       38 阅读
  6. 前端Vue根据List中的某个字段排序

    2024-06-09 00:30:04       13 阅读
  7. Python 字典组成的数组怎么进行?

    2024-06-09 00:30:04       16 阅读
  8. python进行字典

    2024-06-09 00:30:04       9 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-06-09 00:30:04       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-06-09 00:30:04       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-06-09 00:30:04       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-06-09 00:30:04       18 阅读

热门阅读

  1. 阿里云计算之运维概念学习笔记(一)

    2024-06-09 00:30:04       10 阅读
  2. C++中的模板---下

    2024-06-09 00:30:04       8 阅读
  3. 分布式Shiro,SpringBoot项目Shiro整合Redis

    2024-06-09 00:30:04       9 阅读
  4. 【SpringBoot】打包成Docker镜像后日志输出中文乱码

    2024-06-09 00:30:04       10 阅读
  5. Leetcode:删除链表的倒数第N个结点

    2024-06-09 00:30:04       7 阅读
  6. 开发指南028-生成二维码

    2024-06-09 00:30:04       8 阅读
  7. C++day3

    C++day3

    2024-06-09 00:30:04      7 阅读
  8. 用户价值模型-RFM模型

    2024-06-09 00:30:04       8 阅读
  9. 汇编语言-----开始到寄存器

    2024-06-09 00:30:04       6 阅读
  10. 30分钟快速入门TCPDump

    2024-06-09 00:30:04       7 阅读