doppelte Einträge löschen

piti66

Erfahrenes Mitglied
Hey,

ich versuche meine Tabellen auf doppelte einträge zu konrolieren und diese gegebenenfalls zu löschen, abe irgendwie bekomme ich es nicht hin.

Code:
PHP:  
 $query="CREATE TABLE `witztest` ( 
 `id` INT(11) not null auto_increment, 
 `text` TEXT NOT NULL, 
 `kategorie` TEXT NOT NULL, 
 `datum` int(11) NOT NULL default '0', 
 `vote_gesamt` double NOT NULL default '0', 
 `vote_anzahl` double NOT NULL default '0', 
 `durchschnitt` double NOT NULL default '0', 
 `ok` int NOT NULL, 
 `name` text NOT NULL, 
 PRIMARY key(id))"; 
 $abfrage=Mysql_query($query); 
 $query1="insert into witztest select id, distinct text, kategorie, datum, vote_gesamt, vote_anzahl, durchschnitt, ok, name from witz"; 
 $abfrage1=Mysql_query($query1); 
 if ($abfrage1) { 
 $query2="drop table witz"; 
 $abfrage2=Mysql_query($query2); 
 $query3="RENAME TABLE witztest to witz"; 
 $abfrage3=Mysql_query($query3);
so passiert beim insert select nichts, wenn ich aber die id nach hinten verlege funktioniert es zwar, aber die Werte werden nicht in der richtigen Rheinfolge abgespeichert. Also bei id steht dann der text drin und so.

mfg

sebastian
 
Hi

würde es so in etwa lösen:


Weiß nicht wie du deine Abfragen machst, schrei deshalb nur das wichtigste:
PHP:
//Deine Abfrage:
$query=("SELECT id, distinct text, kategorie, datum, vote_gesamt, vote_anzahl, durchschnitt, ok, name FROM witz group by text");
//Ergebnisse in einer While-Schleife durchlaufen:
while () {
 
$query2=("INSERT INTO witztest id, distinct text, kategorie, datum, vote_gesamt, vote_anzahl, durchschnitt, ok, name");
 
}
 
}

Viel Glück

Gruß
Max
 
Habs mal so probiert:
Code:
 include("include/connect/textconnect.php");
 $query="CREATE TABLE `witztest` (
 `id` INT(11) not null auto_increment,
 `text` TEXT NOT NULL,
 `kategorie` TEXT NOT NULL,
 `datum` int(11) NOT NULL default '0',
 `vote_gesamt` double NOT NULL default '0',
 `vote_anzahl` double NOT NULL default '0',
 `durchschnitt` double NOT NULL default '0',
 `ok` int NOT NULL,
 `name` text NOT NULL,
 PRIMARY key(id))";
 $abfrage=Mysql_query($query);
 $query1=("SELECT id, distinct text, kategorie, datum, vote_gesamt, vote_anzahl, durchschnitt, ok, name FROM witz group by text");
 $abfrage1=Mysql_query($query1);
 while ($row=mysql_fetch_object($abfrage1)) {
 $query2=("INSERT INTO witztest id, distinct text, kategorie, datum, vote_gesamt, vote_anzahl, durchschnitt, ok, name");
 $abfrage2=Mysql_query($query2);
 }

kommt folgender Fehler:


Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in C:\xampp\xampp\htdocs\neusinnlos\test.php on line 17

mfg
 
Zurück