使用except查询表中数据重复部分数据,sql大致如下:
全表查询
except
全表查询
group by全字段
having count(1)>1
查出来的结果数据会比真实数据多(查询字段顺序跟数据库中字段顺序不一致)
表数据量千万级,20个字段左右。
一次表中有两条数据重复,查出结果50多条。
全表查询和分组筛选查询结果都是正确的,加上except后数据量就变
什么原因
1.except是两个查询差异的数据,会去重,如上描述having count(1)>1会去掉重复的数据,比较的结果为所有非重复的数据
2.表中数据重复,没有实际主键,是否有业务主键,都没有只能全字段分组了
收起