Wie bekomme ich mit SQL nur eine Zeile wo der Wert einer Spalte der Maximale ist?

2 Antworten

SELECT * FROM UrlauReis ORDER BY ReisenAnz DESC LIMIT 1

Damit hast Du den Datensatz des Urlaubers mit den meisten Reisen. Aber: Wenn es einen zweiten mit derselben maximalen Anzahl an Reisen gibt wird der dann nicht mehr gefunden. Dazu braucht es dann eine weitere Abfrage.

Leider sagst du nicht welche SQL Version (mysql, mssql, postgresql, etc.) benutzt. Daher mag die Syntax leicht varrieren, unten die mssql Variante.

Select Top 1 sub.Urlauber 
from sub 
order by sub.ReisenAnz desc