Prozentanteil

24/05/2010 - 11:35 von Ludwig Koenigbauer | Report spam
Hallo,
ich habe eine Zahlenkolonne aus einem jahrgang.
jetzt möchte ich wissen ,wieviele Zahlen in
in Gruppen prozentual vorhanden sind,
also wieviel prozent der Kolonne im Bereich
zahlung > 0 und zahlung < 100 enthalten sind.
ich habe folgendes statement
SELECT Count(CASE
WHEN zahlung > 0
AND zahlung < 100 THEN Count(zahlung)
/ (SELECT Sum(zahlung)
FROM jahrgang)
END) [procent_zu_total]
FROM jahrgang
WHERE zahlung > 0
GROUP BY Count(zahlung)

Allerdings habe ich immer die Probleme,dass ich auf die
Aggregat/bzw Unterabfrage vom MS-SQLServer hingewiesen werde

Kannmir jemand helfen,wie ich das statement formuliere

Danke für die Hilfe
Grüße
Ludwig
 

Lesen sie die antworten

#1 Jörg Burzeja
24/05/2010 - 20:05 | Warnen spam
Am 24.05.2010 11:35, schrieb Ludwig Koenigbauer:

ich habe eine Zahlenkolonne aus einem jahrgang.
jetzt möchte ich wissen ,wieviele Zahlen in
in Gruppen prozentual vorhanden sind,
also wieviel prozent der Kolonne im Bereich
zahlung > 0 und zahlung < 100 enthalten sind.
ich habe folgendes statement
SELECT Count(CASE
WHEN zahlung > 0
AND zahlung < 100 THEN Count(zahlung)
/ (SELECT Sum(zahlung)
FROM jahrgang)
END) [procent_zu_total]
FROM jahrgang
WHERE zahlung > 0
GROUP BY Count(zahlung)

Allerdings habe ich immer die Probleme,dass ich auf die
Aggregat/bzw Unterabfrage vom MS-SQLServer hingewiesen werde

Kannmir jemand helfen,wie ich das statement formuliere



Ich verstehe nicht, warum Du die Summe von Zahlungen - Sum(zahlung)- für
den Prozentanteil ermitteln willst.

Bau Dir den Select so auf, dass in der Ausgabe Deine gewünschten Werte
stehen. Für die Berechnungen kopierst Du dann nur noch die
Einzelergebnisse zwischen die Operanden.



Ungetestet:

SELECT SUM(CASE
WHEN zahlung > 0 AND zahlung < 100
THEN 1 ELSE 0
) END AS [Gruppe_100],
SUM (CASE
WHEN zahlung > 0
THEN 1 ELSE 0
) END AS [Gruppe_gesamt],

(SUM(CASE
WHEN zahlung > 0 AND zahlung < 100
THEN 1 ELSE 0
) END /
SUM (CASE
WHEN zahlung > 0
THEN 1 ELSE 0
) END) * 100 AS [Anteil_Gruppe_100]


FROM jahrgang






Viele Grüsse

Jörg

Ähnliche fragen