首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >SQL -删除重复项

SQL -删除重复项
EN

Stack Overflow用户
提问于 2018-09-19 00:36:18
回答 5查看 190关注 0票数 0

虽然从技术上讲不是重复的,但有没有办法删除只有一列不同的结果?希望保留最高百分比的行。

数据库: DB2

无论如何,我可以删除一个重复项,结果可能是这样的?:

ID| NAME | VALUE
1 | Test | 0.3455%
1 | Test2 | 0.435%
5 | Test | 0.3455%
5 | Test2 | 0.435%

示例数据:

ID |       NAME       |  VALUE
42 | Water Fill Level | 0.78345%
42 | Valve Fill Level | 0.8546%
65 | Water Fill Level | 0.8934%
65 | Valve Fill Level | 0.93564%
EN

回答 5

Stack Overflow用户

发布于 2018-09-19 01:05:38

如果您有其他列,则可能需要:

select t.*
from (select t.*, row_number() over (partition by id, column1 order by column2 desc) as seqnum
     from t
    ) t
where seqnum = 1;
票数 1
EN

Stack Overflow用户

发布于 2018-09-19 00:38:03

select id, column1, max(column2) 
from table
group by id, column1

此查询获取每个id,column1的最大百分比。可以使用该查询创建一个新表,然后将该表重命名为原始表,以获得所需的结果。

票数 0
EN

Stack Overflow用户

发布于 2018-09-19 01:24:35

从技术上讲,您所要求的内容并不确定。假设你有

现在绝对不确定结果应该是什么(当你有3列时,有3种可能性)。尝试在你的方法中更全面。根据你特别想要的来编辑你的问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52391082

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档