Zeilennummer pro Gruppe in mysql
Will ich produzieren Abfrage-Ergebnis Basis dieses Szenarios erstellen kann, Zeilennummer nach crew_id und Typ.
id crew_id amount type
1 4 1000 AUB
2 4 1500 AUB
3 5 8000 CA
4 4 1000 CA
5 5 1000 AUB
6 6 3000 AUB
7 4 2000 CA
8 6 3500 AUB
9 4 5000 AUB
10 5 9000 CA
11 5 1000 CA
AUSGABE muss die ff:
id crew_id amount type row_number
1 4 1000 AUB 1
2 4 1500 AUB 2
9 4 5000 AUB 3
4 4 1000 CA 1
7 4 2000 CA 2
5 5 1000 AUB 1
3 5 8000 CA 1
10 5 9000 CA 2
11 5 1000 CA 3
6 6 3000 AUB 1
6 6 3000 AUB 2
Möchte ich eine einzelne select-Anweisung nur in dieser Ausgabe
InformationsquelleAutor der Frage user1852837 | 2013-07-30
Du musst angemeldet sein, um einen Kommentar abzugeben.
Die Frage ist schon ziemlich alt. Aber ich würde gerne posten, falls jemand ein Gleiches problem.
Zunächst beschrieben Antworten nicht korrekt funktioniert. Zum Beispiel, für
(Die ich gerade entfernt die Zeilen mit dem Typ 'CA') die Ergebnis-Tabelle
So, in der Tat ist es nicht sowohl crew_id und geben, es braucht nur Art.
Hier ist, wie ich dieses problem gelöst (wahrscheinlich gibt es eine elegantere Art und Weise, es zu tun als die Verwendung von zwei verschachtelten 'FALL ist, aber Sie bekommen die Idee):
Die Hauptidee bleibt. Ich habe gerade eine variable @curCrewId. Wenn jemand verwenden müssen 3 Variablen für die Gruppierung, so dass nur 3 Variablen und 3 nested " FALL ist. 🙂
InformationsquelleAutor der Antwort Rustam Guliev
Bitte gehen Sie durch meine Geige
Eine Letzte Versucht
InformationsquelleAutor der Antwort Janty
@Janty Antwort funktioniert nicht, wenn der Typ beginnt mit einer Zahl (die Rangfolge beginnt bei 2 statt 1).
Verwenden Sie den folgenden statt:
InformationsquelleAutor der Antwort SystemParadox
Zusätzlich zu der Antwort von @Janty hier ist eine Lösung, wenn Sie wollen UDATE Ihre Tabelle mit rownumber:
Als janty zu crewId ist nicht innerhalb. Verwenden Sie eine zweite "Fall" für die, wie bereits in den anderen Antworten.
InformationsquelleAutor der Antwort flipperweid
InformationsquelleAutor der Antwort user1852837
Hier ist meine Antwort mit nur einem Fall das schafft Zeilennummer nach beide Spalten:
InformationsquelleAutor der Antwort Abbas Hosseini