# MySQL größten Wert innerhalb von Gruppe darstellen



## Thomas Darimont (15. Juli 2005)

Hallo!

 Hier mal ein Beispiel wie man unter MySQL den größten Wert einer Gruppe anzeigen kann:
 Bsp.:

```
mysql> select * from foo;
 +------+----------+-------+
 | id   | other_id | title |
 +------+----------+-------+
 |	1 |		1 | A	 |
 |	2 |		1 | B	 |
 |	3 |		1 | C	 |
 |	4 |		2 | D	 |
 +------+----------+-------+
 4 rows in set (0.00 sec)
```
 
 Unsere Abfrage:

```
select a.id,a.title from foo a LEFT JOIN foo b ON a.other_id = b.other_id AND a.id < b.id WHERE b.id IS NULL;
```
 
 Ergibt:

```
+------+-------+
 | id   | title |
 +------+-------+
 |	3 | C	 |
 |	4 | D	 |
 +------+-------+
 2 rows in set (0.00 sec)
```
 
 Funktioniert auch mit MySQL Version < 4.1 

 Gruß Tom


----------



## hpvw (15. Juli 2005)

Das Query gefällt mir.
Das ist dann wohl die elegante Art zu Datics Problem vom Mai.

Gruß hpvw

PS: Ich sehe wieder zunehmend mehr Beiträge von Dir. Bist Du jetzt fertig, mit Deiner Diplomarbeit?


----------



## Thomas Darimont (16. Juli 2005)

Hallo!



> PS: Ich sehe wieder zunehmend mehr Beiträge von Dir. Bist Du jetzt fertig, mit Deiner Diplomarbeit?


...leider nicht  hab noch 14 arbeitsintensive Tage vor mir... 

Gruß Tom


----------



## hpvw (4. Oktober 2005)

Soeben trat in einem anderen Thread das Problem auf, dass bei dieser Art Query auch die Datensätze in der Gruppe gezählt werden sollten. Ein weiterer JOIN löst das Problem, wenn man sich die Anzahl der Datensätze noch zurecht rechnet.
Die Lösung habe ich in dem anderen Thread gepostet.

Gruß hpvw


----------

