Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

mysql去重复关键字

作者:ら非你不取丶   发布日期:2026-06-09   浏览:51

-- 假设我们有一个名为 'users' 的表,其中包含重复的记录,我们想要删除这些重复记录并保留唯一的关键字。

-- 首先,我们可以使用以下查询来查找重复的记录:
SELECT email, COUNT(*)
FROM users
GROUP BY email
HAVING COUNT(*) > 1;

-- 然后,我们可以使用以下语句来删除重复的记录,只保留每组中最早的记录:
DELETE u1 FROM users u1
INNER JOIN users u2
WHERE u1.email = u2.email AND u1.id > u2.id;

-- 或者,我们可以通过创建一个临时表来实现去重:
CREATE TABLE temp_users AS
SELECT DISTINCT * FROM users;

-- 然后删除原始表:
DROP TABLE users;

-- 最后将临时表重命名为原始表名:
RENAME TABLE temp_users TO users;

解释说明:

  1. 查找重复记录:通过 GROUP BYHAVING 子句可以找到哪些关键字(如 email)有重复记录。
  2. 删除重复记录:使用 DELETE 语句结合 JOIN 来删除多余的记录,只保留每个重复组中的最早记录(假设 id 是主键且递增)。
  3. 使用临时表去重:创建一个包含唯一记录的临时表,然后删除原始表并将临时表重命名回原始表名。这种方法适用于数据量较大或结构复杂的表。

上一篇:docker 运行mysql

下一篇:mysql sql

大家都在看

mysql二级索引

mysqlavg函数保留小数

mysql显示表内容

mysql经纬度距离计算

mysql 加密

存储过程mysql

mysql 1265

mysql with语句

mysql时间加减

mysql查询表名,模糊匹配

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站