Ich habe 2 Spalten Name und Typ:mySQL: zeigen nur 4 Einträge pro Typ, Gruppe nach Typ
Name | Type
==================
sam | Blue
john | red
jones | Blue
troy | red
dan | red
ben | Blue
joy | Blue
jim | green
tom | red
edi | green
frank | green
tony | green
jimmy | red
Wie kann ich ziehen nur 4 Zeilen pro Typ, gruppiert nach Typ, nach Typ bestellt mit mySQL?
Mein sollte Finish Ergebnis wie folgt aussehen:
Name | Type
==================
sam | Blue
jones | Blue
ben | Blue
joy | Blue
edi | green
frank | green
tony | green
jim | green
john | red
troy | red
dan | red
tom | red
Verwenden Sie die '.GroupBy()' -Funktion, um sie auf 'Type' zu gruppieren. Verwenden Sie' .Take (4) 'foreach group, um top 4. auszuwählen. Dann .OrderBy()' the 'Type' –
Sortiert nach Typ? Meinst du jede Zeile beginnend mit dem niedrigsten Anfangsbuchstaben des Typs? Also zum Beispiel, alle Ergebnisse, die zuerst Blau wären? –
Oder in SQL (mein vorheriger Kommentar war Linq - viel einfacher in-code aufzuzählen) - 'GROUP BY', dann' SELECT TOP4' (oder 'LIMIT'), dann' ORDER BY' –