sql 查询不重复的记录 可以使用 having count group by 组合
先把不重复数据的id查询出来 通过count()计算 只有数目为1的才是不重复的数据
然后通过in选择出不重复记录的数据
例子:
统计出a表中name不重复的所有记录
select b.* from table b where b.id in(select a.id from table a group by a.name having count(a.id) <2)
//其中 name重复的数据的列名
select a.name,a.sex,a.birthdate,b.name
from tableA a left join tableB b
on a.name = b.name
where b.name is null --这句就是确保A表有但B表没有
select a.* from tableA a where a.name not in (select b.name from where tableB b);
用子查询 简单 实用,不信你试试。
我来回答吧:
select * from tableA where name not in (select name from tableB)
在oracle下最简单的方法是
select * from tableA
minus
select * from tableB