Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Znajdź wiersze ze zduplikowanymi/podobnymi wartościami kolumn MySQL

Ponownie przeczytałem Twoje pierwsze pytanie i znalazłem następujące rozwiązanie:

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
       );

Jest trochę zbyt skomplikowany, ale działa i zapewnia dokładnie to, o co prosiłeś :)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Nie można załadować sterownika QMYSQL na PySide2

  2. Jak wybrać podkategorie z wybranej kategorii za pomocą zagnieżdżonej funkcji w PHP?

  3. Implementacja komentarzy rekurencyjnych w PHP/MySQL

  4. Aktualizacja zapytania kończy się niepowodzeniem i błędem:1175

  5. Jak ustawić permalink swojego posta na blogu według daty i tytułu posta?