Bonjour,
Je souhaite obtenir pour un opérateur, la somme encaissée par jour et par mode de règlement.
Le problème est similaire à ce post
http://www.developpez.net/forums/d11...select-select/
J'ai utilisé cette solution, qui ne me donne pas les resultats escomptés.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 SELECT sum(f2.TTC) as esp,sum(f3.TTC) as cb ,sum(f4.ttc) as cheques,f1.operateur,f1.date FROM facture_test f1 full outer join facture_test f2 on (f2.mode_reglement = 'espèces') full outer join facture_test f3 on (f3.mode_reglement = 'CB') full outer join facture_test f4 on (f4.mode_reglement = 'Chèques') group by f1.operateur,f1.date;
Voici la structure de la base que j'ai créée pour le test.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 CREATE TABLE [dbo].[facture_test]( [id] [int] IDENTITY(1,1) NOT NULL, [HT] [money] NULL, [TTC] [money] NULL, [TVA] [money] NULL, [operateur] [nchar](10) COLLATE French_CI_AS NULL, [date] [datetime] NULL, [mode_reglement] [nchar](10) COLLATE French_CI_AS NULL, CONSTRAINT [PK_facture_test] PRIMARY KEY CLUSTERED ( [id] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY]
J'ai essayé INNER JOIN ou LEFT /RIGHT OUTER JOIN mais sans succès. J'avoue que je m'y perds un peu la, malgré ce cours.
Partager