sql - SQL 每个账户 ID 只返回 1 行
问题描述
如何每个账户 ID 只返回一行?
我有一个类似的表:
ID | 流失十分位数 | 流失倾向 |
---|---|---|
1 | 9十分位 | 低流失倾向 |
1 | 6十分位 | 中流失倾向 |
2 | 1十分位 | 高流失倾向 |
2 | 3十分位 | 高流失倾向 |
我只想保留一排,我不在乎。决赛桌应如下所示:
ID | 流失十分位数 | 流失倾向 |
---|---|---|
1 | 9十分位 | 低流失倾向 |
2 | 3十分位 | 高流失倾向 |
解决方案
您可以使用row_number()
:
select t.*
from (select t.*,
row_number() over (partition by id order by id) as seqnum
from t
) t
where seqnum = 1;
推荐阅读
- c# - 如何以 Windows 形式重新创建此表?
- apache-kafka - 未指定默认 serdes 并使用自定义 serdes -> org.apache.kafka.streams.errors.StreamsException 时,KStream 上的映射操作失败
- vba - 导航时需要让 Excel 重新将过滤器应用到活动工作表
- php - Heroku 在第 4 行的 /app/index.php 中没有这样的文件或目录
- eslint - 是否有 ESLint 规则在作业上对齐 `=`
- google-cloud-storage - 如何使用应用引擎触发新训练数据的训练作业并在 Cloud ML 上部署新模型?
- php - php curl 响应显示 gzip 或编码数据
- docker - 如何在 Docker 容器中保留 go 1.11 模块?
- node.js - 使用文件作为 NodeJS 或 express 服务器的本地存储?
- c++ - 添加颠倒的数字