您的位置:首页 > 其它

联表查询、去除重复值、查找表中多余的重复记录、查找表中没有重复记录的行

2010-10-20 23:04 676 查看
select * from table1

select * from table2

select a.*,b.* from table1 a, table2 b where a.id=b.e

-- 查询表1 列X有重复的值,则只取一条
select min(id) as id,b,c from table1 group by b,c order by id asc

-- 1、查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断
select * from table1 where b in (select b from table1 group by b having count(b) > 1)

-- 1、查找表中没有重复记录的行
select * from table1 where b in (select b from table1 group by b having count(b) = 1)

select a.*,b.id,b.e from table1 a inner join (select min(id) as id,e from table2 group by e) b on a.id=b.e

-- 查询2表关联的,而且不重复的记录
select aa.*,bb.f from (select a.*,b.ids,b.e from table1 a inner join (select min(id) as ids,e from table2 group by e) b on a.id=b.e) aa inner join table2 bb on aa.ids=bb.id
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐