Mark: Mysql - Duplikate finden

Hallo,

1. Frage: Wie kann ich in einer Mysql-DB doppelte(mehrfache Einträge finden?

Beispiel

Spalte1   |   Spalte2
---------------------
Meier     |   Johann
Müller    |   Hans
Meier     |   Johann
(Meier    |   Johann)

Meier, Johann ist nun doppelt(dreifach). Gibt es eine Möglichkeit diese in der sql-Anweisung bis auf einen zu finden und zu löschen?

2. Frage baut darauf auf, wie könnte ich dieses von vorherein bei "UPDATE", "INSERT" innerhalb_eines_querys verhindern?

Gruß, Mark

    1. Frage baut darauf auf, wie könnte ich dieses von vorherein bei "UPDATE", "INSERT" innerhalb_eines_querys verhindern?

    Du musst einen UNIQUE Key anlegen, der Spalte1 und Spalte2 enthält, und dann mit INSERT IGNORE ...

    1. Das war's, danke dedlfix ;)

      Du musst einen UNIQUE Key anlegen, der Spalte1 und Spalte2 enthält, und dann mit INSERT IGNORE ...

  1. hallo,

    du kannst dein feld in der datenbank als UNIQUE definieren.
    damit vermeidest du doppelte einträge.

    gruß
    jom

  2. yo,

    1. Frage: Wie kann ich in einer Mysql-DB doppelte(mehrfache Einträge finden?

    es gibt noch eine weitere möglichkeit, diese nur abzufragen, zusätzlich zu den möglichkeiten, die dir schon gezeigt wurden.

    SELECT spalte1, spalte2
    FROM tabelle
    GROUP BY spalte1, spalte2
    HAVING count(*) > 1

    Ilja