Find rows with identical columns by SQL

adressbook

This is an article about how find rows in a table with one or more identical columns by SQL. The use case is to find entries in an account table with the same email address or with the same first name and surname. The trick is to join the table to itself.

Find all rows with the same email address:

SELECT left.*
FROM account left
INNER JOIN account right ON left.email = right.email
AND left.id != right.id;

Find all rows with the same first name and the same surname:

SELECT left.*
FROM account left
INNER JOIN account right ON left.firstname = right.firstname
AND left.name = right.name
AND left.id != right.id;
  1. No trackbacks yet.

Schreibe einen Kommentar

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s

%d Bloggern gefällt das: