Je veux générer un rapport ayant plusieurs conditions de groupe et j'ai besoin d'afficher toute la combinaison possible de ma table avec la sum de n'importe quelle colonne
voici ma structure de table
Company Budget Account Benificiary Objevctive Spare1 Spare2 Amount C1 B1 A1 BA1 OB1 0 0 200 C1 B2 A1 BA2 OB2 0 0 300 C2 B1 A2 BA2 OB2 S1 S1 400 C1 B1 A1 BA1 OB1 0 0 400
Voici la sortie requirejse qui a toutes les combinaisons possibles de 7 colonnes et sum dans la dernière colonne sur la base des combinaisons
Company Budget Account Benificiary Objevctive Spare1 Spare2 Amount C1 B1 A1 BA1 OB1 0 0 600 C1 B1 A1 BA1 OB1 0 S1 0 C1 B1 A1 BA1 OB1 S1 0 0 C1 B1 A1 BA1 OB1 S1 S1 0 C1 B1 A1 BA1 OB2 0 0 0 C1 B1 A1 BA1 OB2 0 S1 0 C1 B1 A1 BA1 OB2 S1 0 0 C1 B1 A1 BA1 OB2 S1 S1 0 C1 B1 A1 BA2 OB1 0 0 0
je ne suis pas capable de générer une requête qui donnera au-dessus de la sortie
Je suis capable d'atteindre la sortie ci-dessus en utilisant ci-dessous la requête
SELECT B.BENEFICIARY, B.BUDGETHOLDER, B.CITY, B.FIELDNAME, B.OBJECTIVE, SUM(B.value) FROM ( SELECT DISTINCT A.BENEFICIARY, A.BUDGETHOLDER, A.CITY, A.FIELDNAME, A.OBJECTIVE, A.value FROM ( SELECT t.BENEFICIARY, t.BUDGETHOLDER, t.CITY, t.FIELDNAME, t.OBJECTIVE, t.value value FROM #temp T, #temp TT ) A LEFT JOIN #temp T1 ON A.BENEFICIARY = t1.BENEFICIARY AND A.BUDGETHOLDER = t1.BUDGETHOLDER AND A.CITY = t1.CITY AND A.OBJECTIVE = t1.OBJECTIVE ) B GROUP BY B.BENEFICIARY, B.BUDGETHOLDER, B.CITY, B.OBJECTIVE, B.FIELDNAME