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

Cách tìm các bản sao trong MySQL

Sẽ trả lại tất cả các bản ghi có lỗi:

SELECT theTable.*
FROM theTable
INNER JOIN (
  SELECT link, size
  FROM theTable 
  GROUP BY link, size
  HAVING count(ID) > 1
) dups ON theTable.link = dups.link AND theTable.size = dups.size

Tôi thích truy vấn con b / c Tôi có thể làm những việc như chọn tất cả trừ truy vấn đầu tiên hoặc cuối cùng. (rất dễ chuyển thành truy vấn xóa sau đó).

Ví dụ:chọn tất cả các bản ghi trùng lặp NGOẠI TRỪ bản ghi có ID tối đa:

SELECT theTable.*
FROM theTable
INNER JOIN (
  SELECT link, size, max(ID) as maxID
  FROM theTable 
  GROUP BY link, size
  HAVING count(ID) > 1
) dups ON theTable.link = dups.link 
          AND theTable.size = dups.size 
          AND theTable.ID <> dups.maxID


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm cách nào để buộc giá trị của một truy vấn MySQL sử dụng một đối chiếu cụ thể?

  2. Lỗi hàm giá trị tiếp theo

  3. Trình chỉnh sửa Aloha:Chèn hình ảnh / hình ảnh

  4. MySQL Chọn Nơi ngày tối đa và thời gian tối đa

  5. lỗi fpdf và lỗi bảng xem