Bonjour,

J'ai un schéma de base:
Table Employees: Liste des employés
Table Customers: Liste des clients
Table Orders: Liste des commandes des clients, cette table référence bien entendu le client ayant effectué la commande, et l'employé ayant géré cette vente
Table Order detail: Contient les détails pour une commande (Liste de produits avec prix et quantité).

J'essaye maintenant de faire un select pour récupérer toutes les combinaisons client/employé et d'afficher la somme totale des commandes de ce client traité par cet employé. Exemple:
Imaginons que j'ai 2 employés: David et Albert, ainsi que deux clients: Dupont et capone:

-Employé- -Client- -Somme-
David Dupont 0.00€
David Capone 125.00€
Albert Dupont 3 500.00€
Albert Capone 0.00€

Maintenant j'ai réussis à afficher toutes les combinaisons des clients/Employés, j'arrive juste pas à y incorporer la somme de ventes car ca me rend une erreur liée au groupe by. Voiçi les détails:

Requête:
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
 
SELECT
						emp.LastName Employee,
						cust.ContactName Customer,
(
			SELECT COALESCE(SUM(detail.UnitPrice * detail.Quantity),0) Sales
			FROM [dbo].[Order Details] detail,
				 [dbo].[Orders] ord
			WHERE detail.OrderID = ord.OrderID AND
				  ord.EmployeeID = emp.EmployeeID AND
				  cust.CustomerID = cust.CustomerID
)
 
FROM
						[dbo].Employees         emp,
						[dbo].Customers         cust
 
GROUP BY Lastname, ContactName;
Output:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
Msg 8120, Level 16, State 1, Line 3
Column 'dbo.Employees.EmployeeID' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.
Msg 8120, Level 16, State 1, Line 3
Column 'dbo.Customers.CustomerID' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.
Msg 8120, Level 16, State 1, Line 3
Column 'dbo.Customers.CustomerID' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.
Quelqu'un aurait une idée de ce qui n'est pas cohérant dans ce query?
D'avance merci pour votre aide