Ich versuche, die Summe einer Anzahl Pivot-Abfrage zu berechnen.Pivot Gesamtanzahl - Oracle
id | kolomtellingwaarde | regeltellingwaarde |
-------------------------------------------------|
1 | Dutch | M |
2 | Dutch | M |
3 | English | F |
4 | French | F |
5 | French | M |
Oben ist die Visualisierung der Daten in der Tabelle.
FUNCTION pivot_func(p_seqanalytics IN NUMBER)
RETURN sys_refcursor
AS
v_sql varchar2 (32767);
v_refcur sys_refcursor;
BEGIN
v_sql :=
'SELECT *
FROM (SELECT kolomtellingwaarde,
regeltellingwaarde
FROM analytics_bindingresults
WHERE seqanalytics = ' || p_seqanalytics || ')
PIVOT (COUNT (*)
FOR kolomtellingwaarde IN (';
FOR r IN
(SELECT DISTINCT kolomtellingwaarde
FROM analytics_bindingresults
WHERE seqanalytics = p_seqanalytics)
LOOP
v_sql := v_sql || '''' || r.kolomtellingwaarde || ''',';
END LOOP;
v_sql := rtrim (v_sql, ',') || ')) order by 1';
OPEN v_refcur FOR v_sql;
RETURN v_refcur;
END pivot_func;
Dies ist der Code, den ich verwende, um meine Tabelle zu schwenken. Es gibt mir dieses Ergebnis:
Regeltellingwaarde | French | Dutch | English |
------------------------------------------------------|
M | 1 | 2 | 0 |
F | 1 | 0 | 1 |
So ist der Zweck dieser Abfrage ist, dass der Benutzer eine visuaulization bekommt, wie viele männliche/weibliche Sprache sprechen.
Ich versuche, eine Summe für jede Spalte und eine Summe für jede Zeile zu erhalten.
sollte das Ergebnis so aussehen:
Dutch English French Total
M 2 0 1 3
F 0 1 1 2
Total 2 1 2 5
mir jemand helfen könnte heraus, wie das erreichen?
Vielen Dank im Voraus, Brent
Bitte Daten als formatierten Text, nicht Bilder; hier findest du etwas über das Bauen eines [mcve] – Aleksej
@Aleksej Changed es. Danke –