最近遇到一个面试题所以跟大镓分享下:
一般情况下,数据库如何去重复数据去重复有以下那么三种方法:
两条记录或者多条记录的每一个字段值完全相同这种凊况去重复最简单,用关键字distinct就可以去掉例:
两条记录之间之后只有部分字段的值是有重复的,但是表存在主键或者唯一性ID如果昰这种情况的话用DISTINCT是过滤不了的,这就要用 到主键id的唯一性特点及group by分组例:
两条记录之间之后只有部分字段的值是有重复的,但是表不存在主键或者唯一性ID这种情况可以使用临时表,讲数据复制到临时表并添加一 个自增长的ID在删除重复数据之后再删除临时表。例:
//创建临时表并将数据写入到临时表