Requête avec plusieurs COUNTS () et un GROUP BY

J'ai une requête qui renvoie toutes les pièces du navire, les pièces d'usine, la date à laquelle chacun a été entré, et par qui avec leur email respectif. Mais j'ai besoin du comptage total de toutes les pièces et pièces d'usine que chaque personne a saisies. J'ai ajouté les fonctions COUNT ci-dessous mais je continue à écrire cette erreur "Chaque expression GROUP BY doit contenir au less une colonne qui n'est pas une reference externe " Des idées?

select Distinct cc.FirstName+' '+cc.LastName AS 'Name', UEmail AS 'Email', sp.SEntered AS 'Date Entered', COUNT(sp.SHIPID) AS 'Shipments', COUNT(pn.PNumber) AS 'Factory Parts' from R_USERS_Detail U join R_SHIPMENTS sp on sp.UID=U.UID join R_SHIPMENTOrders sd on sd.SHIPID=sp.SHIPID join R_PARTOrders pn on pn.PNumberID=sd.PNumberID join R_Clients c on c.COClientID=sp.COClientID AND c.COClientAcronym LIKE '%AME%' join R_Contacts cc on cc.COContactID=u.COContactID group by u.UEmail, sp.SEntered, 'Name' 

Vous devez utiliser l'expression exacte dans le group by claus, pas l'alias.

 select cc.FirstName+' '+cc.LastName AS 'Name' , UEmail AS 'Email' , sp.SEntered AS 'Date Entered' , COUNT(sp.SHIPID) AS 'Shipments' , COUNT(pn.PNumber) AS 'Factory Parts' from R_USERS_Detail U join R_SHIPMENTS sp on sp.UID=U.UID join R_SHIPMENTOrders sd on sd.SHIPID=sp.SHIPID join R_PARTOrders pn on pn.PNumberID=sd.PNumberID join R_Clients c on c.COClientID=sp.COClientID AND c.COClientAcronym LIKE '%AME%' join R_Contacts cc on cc.COContactID=u.COContactID group by u.UEmail, sp.SEntered, cc.FirstName+' '+cc.LastName