sql 筛选 如果某列有重复字段,只显示一条记录

sql 筛选 如果某列有重复字段,只显示一条记录 如上图 要筛选出下图记录

select  字段1,字段2,字段3,字段4 from A where 字段1 in (select min(字段1) from A t on A.字段

2=t.字段2) order by 字段1

即可以上功能,经过sql 2000/2005/2008完美测试追问

sql语句出错了 没通过验证

追答

select 字段1,字段2,字段3,字段4 from A where 字段1 in (select min(字段1) from A a where a.字段2=A.字段2)order by 字段1

把on改成where即可!

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-03-09
select * from 表名 as a where exists
(
select 1 from
(select min(字段1) as min_字段1,字段2 from 表名 group by 字段1,字段2) as b
where a.字段1=b.min_字段1 and a.字段2 =b.字段2
)追问

按照这个运行出来结果没有变 还是原来那个表的记录

追答

select a.* from 表名 as a,
(select min(字段1) as min_字段1,字段2 from 表名 group by 字段1,字段2) as b
where a.字段1=b.min_字段1 and a.字段2 =b.字段2

本回答被网友采纳
第2个回答  2013-03-09
可以换换查找字段。来自:求助得到的回答
第2个回答  2013-03-09
这个有点问题要解决,如果字段2重复了,那你字段3字段4要显示的是哪个呢?追问

没有关系 显示第一条里的字段3和字段的就好了

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网