Supportnet Computer
Planet of Tech

Supportnet / Forum / Skripte(PHP,ASP,Perl...)

MYSQL Befehl zum finden von doppelten Einträgen?





Frage

Weiß vielleicht Jemand ob es einen Befehl gibt der mir in einer Tabelle doppelte Einträge findet? Oder muss man das selbst ausprogrammieren?

Antwort 1 von rabies

Darf man fragen, was der genaue Zweck ist? ... Die nachfolgenden Löschung der doppelten Datensätze?

Wenn´s einfach nur darum geht, die nicht doppelten Einträge auszugeben, empfiehlt sich die Verwendung von
SELECT DISTINCT
.

Steht doch eine Löschung an, könntest Du Dir zum Beispiel einmal den Artikel aus dem Heddesheimer Blog durchlesen.

Sollte das nicht das richtige sein, bietet google auch noch weitere Resourcen an, die sich mit diesem Thema beschäftigen.

--rabies.

Antwort 2 von Tamara1221Wien

Ich bräuchte die Möglichkeit deshalb, weil ich in unseren Warenkatalog immer wieder doppelt eingegebene Produkte finde.
Die zu filtern ist klar,- aber ich würde sie eben gerne SEHEN bezw. aufgelistet bekommen.
Aber das geht offenbar mit MySQL leider nicht... :-(

Danke trotzdem!
Tamara Janke

Antwort 3 von draack

Hi,

das geht mit Standard-SQL - mit
GROUP BY 
und
HAVING
:

SELECT name, COUNT(name) AS Duplikate
FROM Tabelle
GROUP BY name
HAVING (COUNT(name)>1);


Tschö,
Volker

Antwort 4 von Nessus

Hi,

wäre es nicht besser gleich das Feld auf Unique zu setzen, damit es nicht zu doppelten Datensätzen kommt?
Ggf. noch den Rückgabewert der DB abfangen und auswerten.
mysql_query($query)or die(echo "Doppelter Datensatz");


Nessus

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: