bonjour all
je cherche de l'aide pour pouvoir imbriquer ses deux requets
1 requete
1 2 3 4 5 6 7 8 9 10 11 12 13
| SELECT dbo.rubrique_budgetaire.code_rubrique, dbo.rubrique_budgetaire.credit_definitif, dbo.etat_engagement.objet_depense,
dbo.etat_engagement.montant_engager, SUM(CASE WHEN DATALENGTH(COALESCE (dbo.modification_engager.n_certification2, '')) = 0 THEN NULL
ELSE ISNULL(dbo.modification_engager.montant, 0) END) AS modification_engager,
SUM(CASE WHEN DATALENGTH(COALESCE (dbo.modification_engager.n_certification2, ''))
= 0 THEN 0 ELSE ISNULL(dbo.modification_engager.montant, 0) END) + dbo.etat_engagement.montant_engager AS total_engager,
dbo.etat_engagement.n_nature_engagement
FROM dbo.rubrique_budgetaire INNER JOIN
dbo.etat_engagement ON dbo.rubrique_budgetaire.id1 = dbo.etat_engagement.id1 INNER JOIN
dbo.nature_engagement ON dbo.etat_engagement.id_nature_engagement = dbo.nature_engagement.id_nature_engagement LEFT OUTER JOIN
dbo.modification_engager ON dbo.etat_engagement.id2 = dbo.modification_engager.id2
WHERE (dbo.etat_engagement.n_nature_engagement = 'Var')
GROUP BY dbo.rubrique_budgetaire.code_rubrique, dbo.rubrique_budgetaire.credit_definitif, dbo.etat_engagement.objet_depense,
dbo.etat_engagement.montant_engager, dbo.etat_engagement.n_nature_engagement |
2 requete
WITH CTE AS (SELECT ISNULL(dbo.etat_engagement.montant_engager, 0)+ SUM(CASE WHEN DATALENGTH(COALESCE (dbo.modification_engager.n_certification2, '')) = 0 THEN 0 ELSE ISNULL(dbo.modification_engager.montant, 0) END) AS engager FROM dbo.etat_engagement LEFT OUTER JOIN dbo.modification_engager ON dbo.etat_engagement.id2 = dbo.modification_engager.id2 WHERE(NOT (dbo.etat_engagement.n_certification LIKE '')) AND (dbo.etat_engagement.id1 = '" id de enregistrement 1 requet "') GROUP BY dbo.etat_engagement.montant_engager, dbo.etat_engagement.id2) SELECT SUM(engager) AS cumul_engager FROM CTE AS CTE_1
Partager