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
相关推荐
treacle田4 分钟前
达梦数据库-物理备份与还原-(DISQL联机全备+增量备份+归档进行不完全恢复或完全恢复-实践示例)-记录总结
数据库·达梦数据库物理备份还原恢复
不做无法实现的梦~4 分钟前
Linux 新手到日常运维操作指南
linux·运维·服务器
鱼鳞_5 分钟前
苍穹外卖-Day01(开发环境搭建)
java·spring boot·spring·maven
许长安6 分钟前
Redis 渐进式 rehash:为什么要分批搬迁哈希表
数据库·redis·散列表
测试员周周13 分钟前
【Appium 系列】第09节-数据驱动测试 — YAML 数据 + parametrize
服务器·数据库·人工智能·python·测试工具·语言模型·appium
一块小土坷垃19 分钟前
# ArchiCAD 29.0.2(畅享版):专为建筑师打造的BIM高效建模工具
前端·数据库·macos·开源软件
无限进步_20 分钟前
Linux指令实战:40+核心命令的用法与思维模型
linux·服务器·前端
TAN-90°-24 分钟前
Java 6——成员变量初始值 object equals和== toString instanceof 参数传递问题
java·开发语言
中新传媒26 分钟前
德宸堂心理双师同诊
java·前端·数据库
yexuhgu26 分钟前
html如何修改备注
jvm·数据库·python