J'essaie de faire pivoter la table à l'image suivante, mais j'échoué, le résultat final i besoin est le suivant Comment peut-on faire pivoter la requête de la manière suivante dans l'image
et la requête i utilisé est
SELECT COUNT(T.TTOutID) AS Currenct, TTOutTargetTrxnCount AS Targets,
B.BranchCode ,
ROW_NUMBER() OVER (Order BY COUNT(T.TTOutID) DESC) AS RANK,
CAST((CAST (COUNT(T.TTOutID) AS DECIMAL)/CAST (TTOutTargetTrxnCount AS decimal))*100 AS decimal (4,2)) AS Percentages ,
TTOutTargetTrxnCount-COUNT(T.TTOutID) as Difference
FROM ALX_SalesTargets S
LEFT JOIN ALX_TTOut T ON S.BranchID=T.BranchID
LEFT JOIN ALX_Branches B ON S.BranchID=B.BranchID
Group BY S.TTOutTargetTrxnCount,B.BranchCode
et je fais une table tmp aide
CREATE TABLE #Tempsample
(
currenct int ,
targets bigint,
branchcode nvarchar(128),
rank int,
percentage decimal,
difference int
);
INSERT INTO #Tempsample
(currenct, targets,branchcode,rank,percentage,difference)
VALUES
('131', '2650','EXB', '1','4.94', '2519'),
('25', '3500','MHQ', '2','0.71', '3475'),
('3', '850','MNM', '3','0.35', '847')
il est bon, mais , le code de branche est plus de 20 ajouté dynamiquement comment pouvons-nous faire avec ce code. la longueur et le plan d'exécution est plus –