求查询这样查询结果的SQL语句
比如说有个电话薄表Table1
它有三个字段 dianhuahaoma(电话号码), yonghu(用户), dizhi(地址)
现在这个表中有许多错误数据。比如说一个电话号码有不同的用户或者地址。
我想写个语句让表中的数据只查出相同电话号码中的一条信息就可以了。
比如原来表中的数据为:
dianhuahaoma yonghu dizhi
00001 aa eil
00001 aa yey
00001 bb yey
00001 aa eil
00002 cc 123
.
.
.
现在想得到:
dianhuahaoma yonghu dizhi
00001 aa eil
00002 cc 123
问题点数:100、回复次数:5Top
1 楼YaoMing_csdn(姚明)回复于 2004-12-03 09:09:46 得分 0
这个表没有PK吗?Top
2 楼chinaandys(降龙十八炒&&蛋炒饭)回复于 2004-12-03 09:10:31 得分 45
select id=identity(int,1,1),* into #tmp from table1
select * from #tmp
where id in(select min(id) from #tmp group by dianhuahaoma)
drop table #tmpTop
3 楼qizhanfeng(glacier)回复于 2004-12-03 09:18:37 得分 10
select dianhuahaoma,yonghu,dizhi
from
(
select *,id=(select count(*) from table1 where dianhuahaoma=B.dianhuahaoma and yonghu<=B.yonghu) from Table1 A
) B
where id = 1Top
4 楼WangZWang(先来)回复于 2004-12-03 09:22:32 得分 45
Select dianhuahaoma,max(yonghu) as yonghu,max(dizhi) as dizhi
from table1
group by dianhuahaoma
Top
5 楼uyue(爱走弯路)回复于 2004-12-03 09:56:27 得分 0
TO qizhanfeng(glacier) :
提示:
服务器: 消息 107,级别 16,状态 2,行 1
列前缀 'B' 与查询中所用的表名或别名不匹配。
服务器: 消息 107,级别 16,状态 1,行 1
列前缀 'B' 与查询中所用的表名或别名不匹配。
TO chinaandys(天煞孤星&&蛋炒饭):
结果正确!谢谢!!!
TO WangZWang(阿来):
结果正确!谢谢!!!Top




