# Doppelte Datensätze aus der SQL Abfrage entfernen



## noisy (25. September 2003)

Moinson,

wieder mal ein kleines Problem. Ich mache eine Abfrage auf meiner DB und bekomme eine Anzahl von Datensätzen zurück, die unter Umständen auch
doppelte Datensätze enthält. Dass ist soweit ok, aber wenn ich dass nun ausgebe, will ich die doppelten Datensätze vorher entfernen. Anbei ein bissl
Code, kann jemand weiterhelfen?


```
$db->query("SELECT *, UC.role FROM tbl_user AS U LEFT JOIN tbl_usr_course AS UC ON U.UserID = UC.User_ID WHERE UC.role='".$role."' AND Course_ID = '".$KursID."'");
$query0 = $db-> query_id;
while ($row = $db->fetch_object($query0)) {
...
...
...
}
```

Danke vorab!

Noisy


----------



## Vaethischist (25. September 2003)

Füge doch einfach *DISTINCT* in Deine Anfrage ein (also z.B. _SELECT DISTINCT * FROM ..._). Dann eliminiert die Datenbank automatisch Duplikate und Du mußt das nicht selber coden...


----------



## noisy (25. September 2003)

Danke, nach sowas hab ich gesucht, leider  es nicht  irgendeine Idee woran das liegen könnte?


----------



## cybergnom (25. September 2003)

Eine Erläuterung *was* nicht funktioniert, wäre sicher hilfreich...  

MfG
cyber


----------



## MiLa (25. September 2003)

Wenn es so nicht geht, dann halt auf die "harte Tour" *händereib*

Also...du machst ganz einfach eine MySQL Abfrage, darin machst du eine zweite Abfrage, in der du mit WHERE... festlegst, welche Felder verglichen werden sollen.
Aus der zweiten Abfrage ziehst du etwas raus, womit du den doppelten Eintrag identifizieren kannst z.b. eine ID.
Mit dieser ID löscht du diesen eintrag mit einem MySQL Query.

So, alles kla ?! ;-) 
Kann sein dass es LEICHT umständlich ist   
Aber dürfte funktionieren


----------



## Sven Petruschke (25. September 2003)

Seit wann funktioniert denn DISTINCT nicht


----------



## MiLa (25. September 2003)

Weiss nicht, was er da gemacht hat...
Aber ich finde meine Lösung so und so viel eleganter 

Soviel überflüssiger Code *aufreg* 

Aber wieso einfach, wenns auf komplizierzt geht ?!


----------



## noisy (25. September 2003)

Moin

also, erstmal vielen Dank für die Unterstützung.... habe die SQL Abfrage mit DISTINCT versehen, aber einen kleinen Fehler eingebaut. Das war der Grund,

warum das nicht funktioniere, nu klappts


----------

