Home  >  Article  >  Database  >  Mysql剔除多余的重复记录

Mysql剔除多余的重复记录

WBOY
WBOYOriginal
2016-06-07 16:15:331157browse

Mysql删除多余的重复记录 有时候,数据库里会有多条重复记录。这个时候需要去重,也就是,多条重复记录只保留一条。。。 尤其在数据仓库中,因为一些人为的原因,甚至疏忽,尤为常见。 如何去重呢? 步骤如下: 1. 查询出重复的记录 ? CREATE TABLE push_log_fu

Mysql删除多余的重复记录

有时候,数据库里会有多条重复记录。这个时候需要去重,也就是,多条重复记录只保留一条。。。

尤其在数据仓库中,因为一些人为的原因,甚至疏忽,尤为常见。

如何去重呢?

步骤如下:

1.

查询出重复的记录

?

CREATE TABLE push_log_full_2013_10_30_tmp
SELECT * FROM `push_log_full`
WHERE time BETWEEN FROM_DAYS(TO_DAYS(NOW()) - 1) AND FROM_DAYS(TO_DAYS(NOW()))
AND (imsi, andriodid, time) IN (
SELECT imsi, andriodid, time FROM `push_log_full`
WHERE time BETWEEN FROM_DAYS(TO_DAYS(NOW()) - 1) AND FROM_DAYS(TO_DAYS(NOW()))
GROUP BY imsi, andriodid, time
HAVING COUNT(*) > 1)

?将重复的记录查出来放到一张临时表里面去。

?

2

删除push_log_full表中的重复数据。

3

将临时表的数据重新导入到push_log_full中。

?

?

通过以上三个步骤就实现了重复记录的去重。

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Previous article:装配绿色版mysql-5.6.14Next article:mysql取舍索引