SQL Mehrere Case-Anwendungen ohne Unterteilung

Gwito

Lt. Commander
Registriert
Okt. 2006
Beiträge
1.421
Ich habe gerade eine "Masse" an Daten, die sind aktuell auf Städte gruppiert und enthalten gewisse Anzahlen für jede Stadt und noch ein paar extra Sachen. Die Grunddaten sind tausende einzelne Einträge in einer Tabelle, die eben auf Städte zusammen gefügt werden.
Nun gibt es in den Basisdaten noch 3 Spalten in denen das Ergebnis unterteilt werden soll, sprich Stadt x hat soviele Ergebnise in y so viele in z und so viele in q und noch die Summe.

Aktuell habe ich das aber in mehrere Case-Anwendungen gepackt:
Code:
	case XXXXX
		    when 'C' then count (XXXX)
		    when 'V' then count (XXXX)
                    when 'B' then count (XXXX)
	        end as 'Ergebnis',

Das eben mal 6 für jede Form 2 Case-Anwendungen.

Allerdings taucht dann jede Stadt für jede Case Anwendung auf, komme aber gerade nicht drauf wie ich es simpel summiere da ich dann ja wieder nach XXXX gruppieren muss.

Hoffe man versteht es einigermaßen :D
Hat jemand eine simple Lösung? Oder ist es mit der Case-Anwendung der falsche Ansatz?

VG
 
Wie wär's mit einem GROUB BY, oder habe ich da was falsch verstanden:
Code:
SELECT Stadt, Count(*)
FROM Tabelle
GROUP BY Stadt
 
Im Group by sind bereits die Ortsnamen, eine zweite Variable und die 3 Spalten zu denen es die Case Anwendungen gibt. Ohne würde ja die Case-Anwendung nicht laufen.
Nur genau der Punkt ist ja daran quasi schuld, da er ja die einzelnen aufsumierten Spalten zu den dazugehörigen Orten gruppiert.
Ich habe nun mal bei der Group by die Ortsnamen an letzter Stelle gesetzt, bin mir aber nicht sicher ob das was bringt, läuft leider erst mal einige Zeit bis es durch ist.
 
Wie wär's mit der Tabellenstruktur, 10-20 Beispiel Datensätzen und dem erwarteten Ergebnis?

Dann wäre es etwas einfach zu sehen, was möglich ist, was man optimieren kann und was unnötig ist.
 
Zurück
Oben