SQL语句. 重复ID且带条件过滤查询

时间:2022-09-17 22:32:44
又来打扰了。不是我思考。

查询表里所有项,有的数据是重复ID.."这种情况只需要显示一次". 
并不是只查询重复行.不重复的也要显示出.重复的只需要显示一次.

得您赐教。现在。问题又来了。就是要再这个基础上加一个对 ID 过滤。我传进一个ID值。
ID    Name     age
1      a        123
2      bb        8888
2      cc        8888
2      dd        8888

----
结果是
ID   age
1    12
2    8888
只判断ID重复的

11 个解决方案

#1


接着UP。。。
天快亮了

#2


嘿嘿。。。。。哇哈哈。。。。。
效果达到了。。。。。如果有SQL直接返回值就最好了。

#3


看不懂

#4


select * from table where id in(select id from table group by id)

#5


不好意思上面回答错了,下面这样就可以了.
select min(id),min(name),min(age) from table group by id

#6


要是有查询id才能查出的话
select top 1 * from table where id=@id

select * from (select min(id),min(name),min(age) from table group by id) T where id=@id

#7


select distinct ID,age from 表名

#8


min_jie 
止戈 
等级: 
可用分等级:中农 
总技术分:7441 
总技术分排名:3164 

发表于:2008-11-15 03:09:063楼 得分:30 
SQL codeSelect * from yourtable a where 主键 in (select MIN(主键) from yourtable where ID=a.ID Group By ID)
漏了Group By 

---------------------
谢谢min_jie 的帮助。应该是在这个基础上再加上一个其它列的条件匹配判断。这个表有很多列。有重复数据行。也有不重复的。
重复的只显示一次。不重复的也正常显示。现在还要对其中一列进行条件匹配判断。比如列 In_id=88

 

#9


引用 8 楼 cdsnvip 的回复:
min_jie 
止戈 
等级: 
可用分等级:中农 
总技术分:7441 
总技术分排名:3164 

发表于:2008-11-15 03:09:063楼 得分:30 
SQL codeSelect * from yourtable a where 主键 in (select MIN(主键) from yourtable where ID=a.ID Group By ID) 
漏了Group By 

--------------------- 
谢谢min_jie 的帮助。应该是在这个基础上再加上一个其它列的条件匹配判断。这个表有很多列。有重复数据行。也有不重复的。 
重复的…


主要是你在描述问题的时候不够清楚,否则上面几位哥们也一定能帮到你。。

#10


回头看看,当时真年轻!

#11


路过

#1


接着UP。。。
天快亮了

#2


嘿嘿。。。。。哇哈哈。。。。。
效果达到了。。。。。如果有SQL直接返回值就最好了。

#3


看不懂

#4


select * from table where id in(select id from table group by id)

#5


不好意思上面回答错了,下面这样就可以了.
select min(id),min(name),min(age) from table group by id

#6


要是有查询id才能查出的话
select top 1 * from table where id=@id

select * from (select min(id),min(name),min(age) from table group by id) T where id=@id

#7


select distinct ID,age from 表名

#8


min_jie 
止戈 
等级: 
可用分等级:中农 
总技术分:7441 
总技术分排名:3164 

发表于:2008-11-15 03:09:063楼 得分:30 
SQL codeSelect * from yourtable a where 主键 in (select MIN(主键) from yourtable where ID=a.ID Group By ID)
漏了Group By 

---------------------
谢谢min_jie 的帮助。应该是在这个基础上再加上一个其它列的条件匹配判断。这个表有很多列。有重复数据行。也有不重复的。
重复的只显示一次。不重复的也正常显示。现在还要对其中一列进行条件匹配判断。比如列 In_id=88

 

#9


引用 8 楼 cdsnvip 的回复:
min_jie 
止戈 
等级: 
可用分等级:中农 
总技术分:7441 
总技术分排名:3164 

发表于:2008-11-15 03:09:063楼 得分:30 
SQL codeSelect * from yourtable a where 主键 in (select MIN(主键) from yourtable where ID=a.ID Group By ID) 
漏了Group By 

--------------------- 
谢谢min_jie 的帮助。应该是在这个基础上再加上一个其它列的条件匹配判断。这个表有很多列。有重复数据行。也有不重复的。 
重复的…


主要是你在描述问题的时候不够清楚,否则上面几位哥们也一定能帮到你。。

#10


回头看看,当时真年轻!

#11


路过