Bonjour,

Je débute dans le langage SQL, mais malheureusement mon travail ne me permet pas d'attendre longtemps pour mieux maîtriser ce langage (les délais sont très courts).
Bref, ce que je voudrais est peut être simple pour vous, j'ai la requête suivante :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
SELECT
  RECEP_CDE.DATE_LIQ,
  COMMANDE.DATE_IMPUTATION,
  COMMANDE.EXERCICE,
  COMMANDE.NU_CDE,
  LIG_COMMANDE.LIG_CDE,
  LIG_COMMANDE.LIBELLE_LIGNE_CDE,
  DESIGN_CDE.DESIGN_LIG2,
  DESIGN_CDE.DESIGN_LIG3,
  RECEP_CDE.NUM_LIQ,
  TO_NUMBER(TO_CHAR(RECEP_CDE.DATE_LIQ,'SYYYY')),
  FOURNISSEURS.FOURNISSEUR,
  COMMANDE.DATE_PASSATION,
  COMMANDE.OBJET_DEPENSE,
  BN_CDE.BLOC_NOTE_1,
  BN_CDE.BLOC_NOTE_2,
  COMMANDE.TXFO1,
  COMMANDE.TXFO2,
  LIG_COMMANDE.NU_CDE,
  DESIGN_CDE.DESIGN_LIG4,
  CONCAT(COMPTES_DEPENSES.COMPTE_RECEVEUR, CONCAT( ' - ' ,COMPTES_RECEVEURS.LIBELLE_RECEVEUR)),
  LIQUIDATIONS.COMPTE_ORDONNATEUR,
  CONCAT(COMPTES_DEPENSES.COMPTE_ORDONNATEUR, CONCAT( ' - ' ,COMPTES_DEPENSES.LIBELLE_COMPTE)),
  COMPTES_DEPENSES.NU_COMPTE,
  sum(LIG_COMMANDE.MT_ENGAGE),
  sum(LIG_COMMANDE.QTE_CDEE),
  sum(LIG_COMMANDE.QTE_RECUE),
  sum(LIG_COMMANDE.MT_RECU),
  sum(decode(LIG_COMMANDE.LG_SOLDEE,'O', 0, LIG_COMMANDE.MT_ENGAGE - LIG_COMMANDE.MT_RECU))
FROM
  COMPTES_RECEVEURS,
  COMPTES_DEPENSES,
  FOURNISSEURS,
  LIQUIDATIONS,
  LIG_COMMANDE,
  RECEP_CDE,
  COMMANDE,
  DESIGN_CDE,
  BN_CDE
WHERE
  ( COMMANDE.EH=LIG_COMMANDE.EH and COMMANDE.GEST=LIG_COMMANDE.GEST and COMMANDE.NU_CDE=LIG_COMMANDE.NU_CDE  )
  AND  ( LIG_COMMANDE.EH=DESIGN_CDE.EH (+) and LIG_COMMANDE.GEST=DESIGN_CDE.GEST (+) and LIG_COMMANDE.LIG_CDE=DESIGN_CDE.LIG_CDE (+) and LIG_COMMANDE.NU_CDE=DESIGN_CDE.NU_CDE (+)  )
  AND  ( RECEP_CDE.EH (+) =LIG_COMMANDE.EH and RECEP_CDE.GEST (+)=LIG_COMMANDE.GEST and RECEP_CDE.LIG_CDE (+) =LIG_COMMANDE.LIG_CDE and RECEP_CDE.NU_CDE (+) =LIG_COMMANDE.NU_CDE  AND RECEP_CDE.LIG_CDE (+)   = LIG_COMMANDE.LIG_CDE  )
  AND  ( BN_CDE.EH (+) =COMMANDE.EH and BN_CDE.GEST (+) =COMMANDE.GEST and BN_CDE.NU_CDE (+) =COMMANDE.NU_CDE  )
  AND  ( COMPTES_RECEVEURS.COMPTE_RECEVEUR=COMPTES_DEPENSES.COMPTE_RECEVEUR and COMPTES_RECEVEURS.EH=COMPTES_DEPENSES.EH and COMPTES_RECEVEURS.EXERCICE=COMPTES_DEPENSES.EXERCICE  )
  AND  ( COMPTES_DEPENSES.COMPTE_ORDONNATEUR=LIG_COMMANDE.COMPTE_ORDONNATEUR and COMPTES_DEPENSES.EH=LIG_COMMANDE.EH and COMPTES_DEPENSES.EG=LIG_COMMANDE.EG_COMPTE  and
COMPTES_DEPENSES.EXERCICE  =to_number( to_char(LIG_COMMANDE.DATE_PASSATION,'YYYY'))  )
  AND  ( LIG_COMMANDE.EH=FOURNISSEURS.EH and LIG_COMMANDE.FOURNISSEUR=FOURNISSEURS.FOURNISSEUR  )
  AND  ( RECEP_CDE.EH=LIQUIDATIONS.EH (+) and RECEP_CDE.GEST=LIQUIDATIONS.GEST (+) and RECEP_CDE.NUM_LIQ=LIQUIDATIONS.NUM_LIQ (+) and RECEP_CDE.LIG_CDE=LIQUIDATIONS.NUM_LIG_CDE (+) and RECEP_CDE.NU_CDE=LIQUIDATIONS.NUM_CDE (+) and RECEP_CDE.NU_RECEP=LIQUIDATIONS.NUM_RECEP (+)   )
  AND  
  COMPTES_DEPENSES.NU_COMPTE  IN  ( '2031','2050','2051','20510','20511','218321','218325','6132510','615161','615254','6152610','6261','62841','62843','64883'  )
GROUP BY
  RECEP_CDE.DATE_LIQ, 
  COMMANDE.DATE_IMPUTATION, 
  COMMANDE.EXERCICE, 
  COMMANDE.NU_CDE, 
  LIG_COMMANDE.LIG_CDE, 
  LIG_COMMANDE.LIBELLE_LIGNE_CDE, 
  DESIGN_CDE.DESIGN_LIG2, 
  DESIGN_CDE.DESIGN_LIG3, 
  RECEP_CDE.NUM_LIQ, 
  TO_NUMBER(TO_CHAR(RECEP_CDE.DATE_LIQ,'SYYYY')), 
  FOURNISSEURS.FOURNISSEUR, 
  COMMANDE.DATE_PASSATION, 
  COMMANDE.OBJET_DEPENSE, 
  BN_CDE.BLOC_NOTE_1, 
  BN_CDE.BLOC_NOTE_2, 
  COMMANDE.TXFO1, 
  COMMANDE.TXFO2, 
  LIG_COMMANDE.NU_CDE, 
  DESIGN_CDE.DESIGN_LIG4, 
  CONCAT(COMPTES_DEPENSES.COMPTE_RECEVEUR, CONCAT( ' - ' ,COMPTES_RECEVEURS.LIBELLE_RECEVEUR)), 
  LIQUIDATIONS.COMPTE_ORDONNATEUR, 
  CONCAT(COMPTES_DEPENSES.COMPTE_ORDONNATEUR, CONCAT( ' - ' ,COMPTES_DEPENSES.LIBELLE_COMPTE)), 
  COMPTES_DEPENSES.NU_COMPTE

Et je souhaiterai savoir ce qu'elle donne comme résultat, voilà!

Merci d'avance