日期:2014-05-18  浏览次数:20513 次

sql查重复记录
如题:

用户表 user
字段: userId,userName,userAddr,userQQ 
表里的值
userId, userName, userAddr, userQQ 
1 张三 重庆渝中区 111
2 张三 重庆渝中区 222
3 李四 重庆江北区 333
4 李四 重庆江北区 444
5 李四 重庆南岸区 555

请问我想查询出userName和地区都userAddr的所有记录,请问sql怎么写,谢谢?



------解决方案--------------------
SQL code

declare @user table 
(userId int,userName varchar(4),userAddr varchar(10),userQQ int)
insert into @user
select 1,'张三','重庆渝中区',111 union all
select 2,'张三','重庆渝中区',222 union all
select 3,'李四','重庆江北区',333 union all
select 4,'李四','重庆江北区',444 union all
select 5,'李四','重庆南岸区',555


--是不是这个意思,你要什么样的结果?
select userName,userAddr,[count]=count(1) from @user group by userName,userAddr
/*
userName userAddr   count
-------- ---------- -----------
李四       重庆江北区      2
李四       重庆南岸区      1
张三       重庆渝中区      2
*/