pgsql 分组查询方法

  • group by

    group by 查询的字段 必须出现在分组中。因此这里用 max 函数,来查其他字段

sql 复制代码
SELECT
	 "max"("name") as "name",
	 "max"("organization_id") as "organizationId",
	 account
FROM
	system_users 
GROUP BY account
  • PARTITION BY

Partition By是分组但不聚合

是按 account 进行分组且组内按 create_time 进行升序,返回组内行编号

rownum = 1 可以实现去重的效果

sql 复制代码
WITH res AS (
SELECT
	 organization_id,
	 "name",
	 account,
	 ROW_NUMBER() OVER(PARTITION BY "account" ORDER BY "create_time" ASC nulls last) AS rownum
FROM
	system_users 
)
SELECT * FROM res WHERE rownum = 1
相关推荐
程序员-Benothing3 分钟前
Linux内存管理详解:free、vmstat、buff/cache、swap
linux·运维·服务器
梦想不只是梦与想6 分钟前
SQLAlchemy:异步、连接池 (四)
数据库·fastapi·sqlalchemy
顽疲9 分钟前
Java vue 养老系统源码详解:入住核算单 live-check 缴费入账与预交金收据实践
java·vue.js·python·java 养老·springboot 养老·vue养老
共饮一杯无15 分钟前
LiveKit本地录制落盘路径排查与修复实践
java·go·livekit
StevenLdh27 分钟前
第八期 · 情绪闯关挑战盒:一个「无惩罚」成就系统的数据建模
java·微信小程序
j7~28 分钟前
【仿 RabbitMQ 项目】发布订阅消息队列 (篇八):交换机数据管理模块,分层类设计、SQLite 回调原理与代码实现
服务器·网络·数据库·消息队列·交换机·交换机数据管理·sqlite回调原理
电梯界知识分子29 分钟前
浙江台州六层拆迁自建房:建房前期土建交底,规避薄墙预制板误区,预留轮椅通行电梯
运维·服务器·网络·安全·家用电梯
PHP实战开发录30 分钟前
PHP上传文件为什么会被覆盖
数据库·mysql·php
HelloWorld工程师33 分钟前
不改动任何历史配置,也能让 SSL 证书自动续期
linux·服务器·网络协议·https·ssl
Wang's Blog35 分钟前
Java 项目实战: 交友项目 - 入门案例:编写 Dubbo 服务消费者
java·dubbo·交友