Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

loại bỏ các hàng trùng lặp dựa trên một giá trị cột

Điều này tương tự như truy vấn của Gordon Linoff, nhưng không có truy vấn con:

DELETE t1 FROM table t1
  JOIN table t2
  ON t2.refID = t1.refID
  AND t2.ID < t1.ID

Điều này sử dụng liên kết bên trong để chỉ xóa các hàng có một hàng khác có cùng refID nhưng ID thấp hơn.

Lợi ích của việc tránh truy vấn con là có thể sử dụng một chỉ mục cho tìm kiếm. Truy vấn này sẽ hoạt động tốt với chỉ mục nhiều cột trên refID + ID.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Đối tượng không thể được chuyển đổi thành một chuỗi trong MySQLi PHP

  2. Cách tốt nhất để hạn chế các trang cụ thể chỉ cho người dùng đã đăng nhập trong Codeigniter là gì?

  3. Tấn công SQL injection với php

  4. RuntimeError:OperationalError:(2003, Không thể kết nối với máy chủ MySQL trên 'Địa chỉ IP của phiên bản'

  5. Cách dễ nhất để thêm nhiều không gian vào một chuỗi trong MySQL - SPACE ()