1 11
2 11
3 22
例如这样的数据电话号码相同的只取一条.重复的 11 怎么去掉.也就是说只取出两条数据.
谢谢.
12 个解决方案
#1
select * from tt a
inner join
(select 电话号码,max(id) as ma from tt) b
on a.电话号码=b.电话号码 and a.id=b.ma
inner join
(select 电话号码,max(id) as ma from tt) b
on a.电话号码=b.电话号码 and a.id=b.ma
#2
or
select * from tt a where id=(select top 1 id from tt where a.电话号码=电话号码)
select * from tt a where id=(select top 1 id from tt where a.电话号码=电话号码)
#3
如果ID不唯一可以吗
#4
不行,必须要有唯一标识的字段
#5
ID必须唯一。
否则,上述两种方法查询的数据会有问题。
否则,上述两种方法查询的数据会有问题。
#6
SELECT ID,电话号码,电话日,负责人,公司名,备注,电话.评价,删除,评价.评价,表示 FROM 电话 a,评价 where ID = (select top 1 ID from 电话 where a.电话号码 = 电话号码) and 评价.评价 = 电话.评价 and 删除 = false order by 电话日 DESC
请问这个错在哪里
请问这个错在哪里
#7
将记录及正确结果贴出来
#8
执行不了.怎么有正确结果
#9
怎么有正确结果
你希望得出结果的是什么?
你希望得出结果的是什么?
#10
希望的是电话号码重复的只显示一条,现在SQL语句有问题都执行不过.
#11
如果只是用你上述的数据,我的SQL代码就可以了,其它的,贴出记录
及正确结果。
很明显,你的数据与你的要求不是配套的。
及正确结果。
很明显,你的数据与你的要求不是配套的。
#12
把a写括号里select top 1 ID from 电话 a where a.电话号码 = 电话号码
#1
select * from tt a
inner join
(select 电话号码,max(id) as ma from tt) b
on a.电话号码=b.电话号码 and a.id=b.ma
inner join
(select 电话号码,max(id) as ma from tt) b
on a.电话号码=b.电话号码 and a.id=b.ma
#2
or
select * from tt a where id=(select top 1 id from tt where a.电话号码=电话号码)
select * from tt a where id=(select top 1 id from tt where a.电话号码=电话号码)
#3
如果ID不唯一可以吗
#4
不行,必须要有唯一标识的字段
#5
ID必须唯一。
否则,上述两种方法查询的数据会有问题。
否则,上述两种方法查询的数据会有问题。
#6
SELECT ID,电话号码,电话日,负责人,公司名,备注,电话.评价,删除,评价.评价,表示 FROM 电话 a,评价 where ID = (select top 1 ID from 电话 where a.电话号码 = 电话号码) and 评价.评价 = 电话.评价 and 删除 = false order by 电话日 DESC
请问这个错在哪里
请问这个错在哪里
#7
将记录及正确结果贴出来
#8
执行不了.怎么有正确结果
#9
怎么有正确结果
你希望得出结果的是什么?
你希望得出结果的是什么?
#10
希望的是电话号码重复的只显示一条,现在SQL语句有问题都执行不过.
#11
如果只是用你上述的数据,我的SQL代码就可以了,其它的,贴出记录
及正确结果。
很明显,你的数据与你的要求不是配套的。
及正确结果。
很明显,你的数据与你的要求不是配套的。
#12
把a写括号里select top 1 ID from 电话 a where a.电话号码 = 电话号码