Kurze SQL-Statement-Frage

Berlinrider

Ruhestand
Thread Starter
Mitglied seit
21.03.2005
Beiträge
21.799
Hi,

ich habe gerade eine Frage zu einem SQL Statement.

Code:
SELECT RegionName,
 CASE
	 WHEN Quartal = '3'
	 THEN COUNT (*) 
 END AS Quartal_3_09,
 CASE
	 WHEN Quartal = '4'
	 THEN COUNT (*) 
 END AS Quartal_4_09
FROM dbo.AufgabeB 
WHERE Jahr ='2009' and (Quartal ='4' or Quartal ='3')
GROUP By RegionName, Quartal

So sieht das Statement aus, und so das Resultat:

sql83mkf.jpg


Ich würde aber gerne, das beide Quartale pro Bundesland nebeneinander stehen. Wie geht das? ich stehe gerade völlig auf dem Schlauch.
 
Wenn Du diese Anzeige nicht sehen willst, registriere Dich und/oder logge Dich ein.
Select * from (Select RegionName, count(*) from u526446.dbo.AufgabeB where Jahr ='2009' and Quartal ='3' group by RegionName) a inner join (Select RegionName, count(*) from u526446.dbo.AufgabeB where Jahr ='2009' and Quartal ='4' group by RegionName) b on a.RegionName=b.RegionName
 
Supi, läuft! Dachte schon, dass ein Join das richtet, wusste nur nicht die Syntax. :)
 
Kurze Abschlussfrage dazu: Im dritten Quartal gibt es eine Region nicht (bzw. diese wurde nicht beliefert und taucht deswegen nicht auf). Mit einem RIGHT JOIN gibt er die Region trotzdem aus. Das ist ideal. Wenn nun aber auch im 4. Quartal eine Region nicht existieren würde, dann würde ich ein Problem bekommen. Kann man dagegen etwas tun?
 
Das scheint MSSQL leider nicht zu kennen. Geht nur in Verbindung mit Left/Right.
 
Hardwareluxx setzt keine externen Werbe- und Tracking-Cookies ein. Auf unserer Webseite finden Sie nur noch Cookies nach berechtigtem Interesse (Art. 6 Abs. 1 Satz 1 lit. f DSGVO) oder eigene funktionelle Cookies. Durch die Nutzung unserer Webseite erklären Sie sich damit einverstanden, dass wir diese Cookies setzen. Mehr Informationen und Möglichkeiten zur Einstellung unserer Cookies finden Sie in unserer Datenschutzerklärung.


Zurück
Oben Unten refresh