mysql - 删除重复记录
问题描述
如何在不更改/添加任何额外列的情况下从 MySQL 表中删除所有重复数据?
SELECT * FROM webs;
+--------+
| web |
+--------+
| google |
| google |
| msn |
| yahoo |
| msn |
| yahoo |
+--------+
结果应该是:
+--------+
| web |
+--------+
| google |
| yahoo |
| msn |
+--------+
解决方案
您可以通过临时表来实现这一点:
CREATE TABLE temp SELECT DISTINCT * FROM webs;
DROP TABLE webs;
ALTER TABLE temp RENAME TO webs;
推荐阅读
- ios - UIImageWriteToSavedPhotosAlbum 错误:使用未解析的标识符
- python-2.7 - ubuntu playbook 中的 Python 非 ASCII 字符 '\xe2'
- php - 将 POST 回显到 SQL 字符串中
- sql - Eagerload has_one 与具有多个相关值的表的关联
- java - 如何使用流比较字符串字符?
- scala - 使用scala在火花结构化流中将排序的数据帧写入kafka主题(排序的顺序行)
- javascript - 如何在运行下一个代码之前等待异步 JSZip .forEach() 调用完成?
- node.js - 无法使用 mongoose 在 mongodb 中插入散列(bcrypt)密码
- firebase - 将 Firebase Firestore 安全规则拆分为单独的文件?
- docker - 在 Azure Web App for Containers 中无法访问 RabbitMQ 容器