SQL语句,某个字段相同的记录如何只让它查处一条来

时间:2021-12-24 12:50:40
SQL语句,某个字段相同的记录如何只让它查处一条来 

如姓名字段有相同的,
库中记录: 

姓名   性别 
11      女 
11      女 
22      女 
22      女 
11      女 
33      女 
33      女 
33      女 

SQL查处的数据是: 
姓名   性别 
11      女 
22      女 
33      女 

13 个解决方案

#1


distinct(姓名)试下啦

#2


select distinct 姓名 from table

#3


select distinct 姓名 from table

#4


用distinct的话,还可以用联合查询吗?

#5


不对呀,用distinct的话不就是这可以查询某个字段吗?
我不是要这样的效果的呀?
我要的是如果我重名的话,就显示处一条来,这条记录的所有字段都显示出来

#6


select * from 表 where 条件
这样就把一个字段相同的所有信息都显示出来了!要是想要一条的话你就要第一条不就行了吗?
对吧!?如果继续查询就用movenext选择下一条记录,这样我想没有错的!

#7


<%rs.open "select * from table",conn,1,1
while not rs.eof
if name<>rs("姓名") then
   response.write(rs("姓名")...)
   name=rs("姓名")
end if
rs.movenext
wend%>

#8


select name,max(col1),max(col2) from tablename group by name

#9


这个问题有点意思!
但梦之旅的方法不是普遍可以用的!

#10


要取出的那条数据有没有什么规律!比方说最大最小!,还是随意的

#11


select * from tablename ta where id=(select top 1 id from tablename where 有重复的字段名=ta.有重复的字段名)

数据如果没有唯一主键的话,处理将会非常复杂,你将需要逐一比较各个字段并排除和外部查询中产生重复比较的记录.


所以所有的数据表都定义一个唯一主键是数据库设计的一个原则.

#12


select distinct 姓名,性别 from table 

这样就OK吧?

#13


假设要取A字段的无重复记录:
select * from tab where A in (select distinct A from tab)

#1


distinct(姓名)试下啦

#2


select distinct 姓名 from table

#3


select distinct 姓名 from table

#4


用distinct的话,还可以用联合查询吗?

#5


不对呀,用distinct的话不就是这可以查询某个字段吗?
我不是要这样的效果的呀?
我要的是如果我重名的话,就显示处一条来,这条记录的所有字段都显示出来

#6


select * from 表 where 条件
这样就把一个字段相同的所有信息都显示出来了!要是想要一条的话你就要第一条不就行了吗?
对吧!?如果继续查询就用movenext选择下一条记录,这样我想没有错的!

#7


<%rs.open "select * from table",conn,1,1
while not rs.eof
if name<>rs("姓名") then
   response.write(rs("姓名")...)
   name=rs("姓名")
end if
rs.movenext
wend%>

#8


select name,max(col1),max(col2) from tablename group by name

#9


这个问题有点意思!
但梦之旅的方法不是普遍可以用的!

#10


要取出的那条数据有没有什么规律!比方说最大最小!,还是随意的

#11


select * from tablename ta where id=(select top 1 id from tablename where 有重复的字段名=ta.有重复的字段名)

数据如果没有唯一主键的话,处理将会非常复杂,你将需要逐一比较各个字段并排除和外部查询中产生重复比较的记录.


所以所有的数据表都定义一个唯一主键是数据库设计的一个原则.

#12


select distinct 姓名,性别 from table 

这样就OK吧?

#13


假设要取A字段的无重复记录:
select * from tab where A in (select distinct A from tab)