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

Tìm các hàng có giá trị cột trùng lặp / tương tự MySQL

Tôi đã đọc lại câu hỏi ban đầu của bạn và tôi đã đưa ra giải pháp sau:

SELECT *
FROM   users
WHERE  id IN
       (SELECT id
       FROM    users t4
               INNER JOIN
                       (SELECT  soundex(fname) AS snd,
                                COUNT(*)       AS cnt
                       FROM     users          AS t5
                       GROUP BY snd
                       HAVING   cnt > 1
                       )
                       AS t6
               ON      soundex(t4.fname)=snd
       )
AND    id NOT IN
       (SELECT  MIN(t2.id) AS wanted
       FROM     users t2
                INNER JOIN
                         (SELECT  soundex(fname) AS snd,
                                  COUNT(*)       AS cnt
                         FROM     users          AS t1
                         GROUP BY snd
                         HAVING   cnt > 1
                         )
                         AS t3
                ON       soundex(t2.fname)=snd
       GROUP BY snd
       );

Nó hơi phức tạp một chút, nhưng nó hoạt động và cung cấp chính xác những gì bạn yêu cầu :)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. nối hai bảng cùng với số bản ghi từ bảng thứ hai dựa trên điều kiện

  2. iOS - Các phương pháp hay nhất về đồng bộ hóa cơ sở dữ liệu máy chủ và dữ liệu cốt lõi

  3. Kiểm tra sự tồn tại của cột / khóa?

  4. Làm cách nào để truy cập dòng lệnh MySQL với XAMPP dành cho Windows?

  5. python mysql.connector DictCursor?