SQL-Abfrage Mit Funktionen - Wie bekomme ich die MAXIMALE Anzahl der in der Liste
Wie kann ich die Abfrage für die MAXIMALE Anzahl von Transaktionen...
Mein code ist wie folgt:
SELECT customer_id, COUNT(customer_id)
FROM rental
GROUP BY customer_id
HAVING MAX(COUNT(customer_id)); //I need to get the MAXIMUM COUNT of the list
Welche Datenbank verwenden Sie?
Ich glaube, wir müssen einige sample-Daten, wenn keine der Antworten für Sie arbeiten.
Ich glaube, wir müssen einige sample-Daten, wenn keine der Antworten für Sie arbeiten.
InformationsquelleAutor newbie | 2011-04-20
Du musst angemeldet sein, um einen Kommentar abzugeben.
Seit mehr als einen Kunden haben, können die gleichen Höchstens die Zählung, die Sie tun sollten wie folgt
Allerdings, wenn Sie ok sind, mit einem x-beliebigen Kunden ausgewählt haben, als Sie sollten verwenden rsbarro Antwort
Du bekommst zwei Kunden zurück. Sie müssen herausfinden, von Ihrem Benutzer, die zu beheben Krawatten.
Ist dies auch möglich, indem man nicht mit limit ?
sicher könnten Sie max, um zu bestimmen, was der Wert der größten zu zählen ist. z.B.
having count(customer_id) = (select max(k) from (select count(customer_id) k from rental group by customer_id) t)
InformationsquelleAutor Conrad Frix
Wenn Sie auf der Suche für die
customer_id
mit der größten Anzahl von Zeilen in derrental
Tabelle, die Sie verwenden könnten:Obige Abfrage zählt alle Datensätze für jede customer_id, Sortieren Sie in absteigender Reihenfolge, und wählen Sie dann nur die oberste Zeile. Die maximale Anzahl für einen Kunden in
CustomerRowCount
.BEARBEITEN
Conrad brachte den Punkt, dass zwei oder mehr
customer_id
's haben die gleiche Anzahl von Datensätzen. Wenn die Anforderung ist, dass mehrere Datensätze zurückgegeben werden sollen, in diesem Fall, dann ist seine Abfrage erhalten Sie das Ergebnis, die Sie suchen. Wenn nur ein Datensatz zurückgegeben werden soll, dann eine einfache, einheitliche Möglichkeit, um Bande zu brechen, würde nur für die Benutzer mit dem niedrigstencustomer_id
. Um das zu tun, können Sie einfach ändern Sie die ORDER BY-Anweisung:Sorry, ich bin nicht zu verstehen, was Sie suchen. Wenn jemand noch nicht herausgefunden, konnte, aktualisieren Sie Ihre Frage mit einigen Beispiel-Daten?
beide Abfragen geben die maximale Anzahl. oder die größte Anzahl für einen bestimmten Kunden. Daher auch der Grund für die Bestellung, die der Graf in der Abfahrt, um dann die Auswahl in der oberen Zeile.
InformationsquelleAutor rsbarro
Versuchen:
oder
Ich denke, Ihnen fehlt ein DESC auf ORDER VON der für die zweite Abfrage. =]
Danke für den Hinweis. Stehe korrigiert.
InformationsquelleAutor Kangkan
Abfrage für MySQL
InformationsquelleAutor John Hartsock