Mehrere Count-Abfragen mit einem Query

So sollte es auch mit dem SQL-Server gehen:

Code:
select
(select count(ID) As Anzahl_A from "Tabelle" where "Spalte" = 'A' ) as A,
(select count(ID) As Anzahl_B from "Tabelle" where "Spalte" = 'B' ) as B

Sollte man nicht erstmal dem Frager eine Lösung aufzeigen, die einfach nur die Frage beantwortet?
 
Nunja, der Frager hat die Frage im Jahre 2007 gestellt und hat insgesamt 7 Beiträge im Forum. Wir warten am besten mal bis er dir einen Vorschlag präsentiert.
 
Hallo,

hier mal noch eine Alternative zu der UNION- bzw. Skalare-Subquery-Lösung :

SQL:
SELECT [id]
      ,[attribut1]
      ,[attribut2]
  FROM [count_example]

Ausgabe:
Code:
id          attribut1                                          attribut2
----------- -------------------------------------------------- -----------
1           A                                                  11
2           B                                                  22
3           B                                                  33
4           A                                                  11
5           A                                                  33
6           C                                                  22

(6 Zeile(n) betroffen)

Zählen:
SQL:
  select 
   SUM(case when attribut1 = 'A' then 1 else 0 end) as "As"
  ,SUM(case when attribut1 = 'B' then 1 else 0 end) as "Bs"
  ,SUM(case when attribut1 = 'C' then 1 else 0 end) as "Cs"
  ,SUM(case when attribut2 = 11 then 1 else 0 end) as "11er"
  ,SUM(case when attribut2 = 22 then 1 else 0 end) as "22er"
  ,SUM(case when attribut2 = 33 then 1 else 0 end) as "33er"
  from count_example

Ausgabe:
Code:
As          Bs          Cs          11er        22er        33er
----------- ----------- ----------- ----------- ----------- -----------
3           2           1           2           2           2

(1 Zeile(n) betroffen)
Gruß Tom
 
Zurück