Filtern nach Gruppenanzahl
In SQL ist es möglich, Ergebnisse zu gruppieren und basierend auf der Anzahl der Zeilen innerhalb jeder Gruppe zu filtern. Dies kann mithilfe der HAVING-Klausel erreicht werden.
Beachten Sie die folgende Anforderung:
Problemstellung:
Ist es möglich, Ergebnisse zu gruppieren? und dann danach filtern, wie viele Zeilen sich in der Gruppe befinden? Zum Beispiel:
SELECT * FROM mytable WHERE COUNT(*) > 1 GROUP BY nameNach dem Login kopieren
Lösung:
Die HAVING-Klausel ermöglicht es uns, einen Filter auf eine Aggregatfunktion anzuwenden. In diesem Fall können wir nach der Aggregatfunktion COUNT(*) filtern, um Gruppen mit mehr als einer Zeile auszuwählen. Die korrekte Syntax lautet:
SELECT name, COUNT(*) FROM mytable GROUP BY name HAVING COUNT(*) > 1
Diese Abfrage gibt alle eindeutigen Namen und die Anzahl der mit jedem Namen verknüpften Zeilen zurück, wobei die Anzahl größer als 1 ist.
Das obige ist der detaillierte Inhalt vonKann SQL gruppierte Ergebnisse basierend auf der Zeilenanzahl filtern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!