Mailinglisten-Archive |
hi, die einfachste Lösung wäre wenn du einfach eine Kopie deiner Tabelle erzeugst (leer, mit dem zusammengesetzten Schlüssel) und per REPLACE INTO tabelle_2 SELECT * FROM tabelle_1 die Inhalte kopierst und dann Tabelle 1 löscht und Tabelle 2 umbenennst. Markus ----- Original Message ----- From: "Arash Yalpani" <Arash_(at)_dol2day.com> To: "Mysql-De" <mysql-de_(at)_lists.4t2.com> Sent: Wednesday, September 13, 2000 10:43 AM Subject: KEY über 2 Felder > Liebe Listenmitglieder, > > wieder ein Problem, mit dem ich Euch belästige...: > > Ich habe ein Votingsystem entwickelt, bei dem nur bei uns angemeldete > Mitglieder abstimmen können. > > Ich verwende folgende Tabelle um Stimmabgaben zu speichern: > > stimm_abgabe > benutzer_id, antwort_id > > Die Tabelle stellt eine Relation im Verhältnis N:M zwischen einer > Benutzer-Tabelle und den möglichen Antworten dar. > > Um ein schnelleres durchsuchen der Tabelle nach einem Wertepaar zu > ermöglichen, möchte ich einen KEY über beide Felder anlegen. > > Leider habe ich Anfangs etwas unsauber programmiert, so dass doppelte > Einträg in der Tabelle vorhanden sind und der Versuch, den KEY anzulegen mit > einer Fehlermeldung scheitert. Nun such ich nach einem Weg doppelte Einträge > aus dieser Tabelle zu entfernen. Allerdings muss, wenn 3 gleiche Einträge > vorhanden waren am Ende 1 Eintrag übrigbleiben... > > meine Frage ist nun: kann ich dies mit einem mysql-befehl bewerkstelligen > oder geht das nur über ein Skript? Ich habe es mit php bereits versucht, bin > aber gescheitert, da die Tabelle fast 1 Mio. Einträge hat und sämtliche > Skripte abbrechen... > > Vielen Dank für jeden Hinweis, > > schöne Grüsse, > Arash > > --- > *** Weitere Infos zur Mailingliste und MySQL unter www.4t2.com/mysql > --- *** Weitere Infos zur Mailingliste und MySQL unter www.4t2.com/mysql
php::bar PHP Wiki - Listenarchive