SQL语句取某一字段的唯一性

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL语句取某一字段的唯一性相关的知识,希望对你有一定的参考价值。

表中,二列为A、B
A列值中为数字但有部分重复,B列为不同值
如A列为010101、010102、010102、010103、010104、
B列对应值为张三、机四、机五、四七、五八

要达到A列重复值剔除,也就是010102只保留一个,对应的机四、机五随机取一个就行
A B
1102030010 双台村
0521020016 东河村
0419010046 蛟龙村
0419010046 null
0109020011 二道坊村
1505030009 红庙村
0307040004 涧沟村
0307040004 复兴村
0107010123 桥东村
0603030083 广山村
0207010020 鱼岭村
把其中的重复数据只保留一个,保证A列数据的唯一性

select distinct A,B from
这个不可以,因为B列有不同值,最后A列还是有两个数据

参考技术A select a,max(b) from a group by a
或者
select a1.a,b from a as a1 where b = (select top 1 b from a where a.a = a1.a)本回答被提问者采纳

sql server 2008中如何取某字段最大值所在的一条数据(多个字段)

如题,例如某张表有ID NAME SCORE DATE四个字段。如何取出每个NAME的最大SCORE值所在的那条记录。一个NAME 可以有多个SCORE。如果最大的SCORE重复,去DATE最新的那条。哪位大神帮帮忙。就是分组如何取最大字段所在行的整条数据啊。

参考技术A select * from 

select id,name,score,date,ROW_NUMBER() over(PARTITION by 
name order by score desc,date desc) as num from tablename 
) T where T.num <= 1 
order by name

本回答被提问者和网友采纳

以上是关于SQL语句取某一字段的唯一性的主要内容,如果未能解决你的问题,请参考以下文章

oracle数据库中怎么能避免相同的数据插入数据库多遍?sql语句怎么处理呢?

怎样用SQL语句对指定字段建立非空约束?

sql 查询某一字段值的个数

在MYSQL中怎样把某字段(已存在)唯一化

SQL server 2005如何设置一个或几个字段唯一约束?

在SQL中,如何查询某一字段中最大值的数据