Tom: MySQL Tabelle doppelte Einträge löschen...

Beitrag lesen

Hello,

CREATE TABLE r_data (
  trickid int(10) unsigned NOT NULL default '0',
  userid int(10) unsigned NOT NULL default '0',
  time int(10) unsigned NOT NULL default '0',
  KEY useridboardid (userid,boardid)
) TYPE=MyISAM;

Ich kann keinen Primary Key entdecken.
Der müsste ja mindestens ein UNIQUE aufweisen.

Hast Du nun die Sätze genau doppelt drin, also auch die 'trickid', die bei Dir der Datensatzschlüssel zu sein scheint?

MySQL kann zwar einen Select mit Selbstbezug durchführen, kann aber leider nicht mit (Multi-)Updates und Selbstbezug umgehen. Dazu müsste die gesamte Abfrage vorher als persistente Selection (Snapshot) genommen werden.

Aber genau so kanst Du (wahrscheinlich) vorgehen.

Create table temp_table select distinct * from r_data;

"Wahrscheinlich" bezieht sich darauf, dass das Statement bei mir funktioniert, aber ich so schnell keine Musterdaten mit vollständigen Doubletten habe.

Harzliche Grüße aus http://www.annerschbarrich.de

Tom

--
Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
Nur selber lernen macht schlau