Il y a une requête qui demande des produits favoris qui est achetée par chaque coustomer. Je dois sélectionner et dans la première sélection j'ai choisi le nombre de produits que chaque client a acheté. dans l'autre sélectionnez je veux sélectionner le maximum de ces boughts pour chaque client. mais quand je veux sélectionner max (colonne de sélection précédente) il obtient et erreur et dit qu'il n'est pas défini quelqu'un peut m'aider à résoudre ce problème. Je suis très motivé pour résoudre le problème de cette façon, et je ne suis pas prêt à utiliser d'autres méthodes comme la création de vue ou quelque chose comme ça. quelqu'un peut me aider à ce sujet:Comment utiliser la fonction Max sur une autre colonne à partir d'un select
SELECT INN.Maximum,INN.Name, customer.ProductName from
(SELECT ContactName, ProductName, COUNT([Order Details].Quantity) AS NumOftimeCustomer
FROM Orders, [Order Details], Products, Customers
WHERE [Order Details].OrderID = Orders.OrderID
AND [Order Details].ProductID = Products.ProductID
AND Orders.CustomerID = Customers.CustomerID
GROUP BY ContactName, ProductName)customer
INNER JOIN
(SELECT Customers.ContactName AS Name, **MAX(customer.numOftimecustomer)** AS Maximum
from Customers, customer
GROUP BY Customers.ContactName) INN
ON INN.Name = customer.ContactName AND INN.Maximum = customer.NumOftimeCustomer
cette partie qui est mentionné avec MAX (customer.numOftimecustomer) ** est la partie qui donne l'erreur et il est dit que le client de l'objet n'est pas défini. est-il un moyen de le résoudre sans vue? pourquoi est-ce de cette façon? puisque le client que j'ai défini n'est pas une table?
quel est votre SGBDR? –
comme je l'ai mentionné dans les balises, c'est Microsoft SQL Server 2008. – user435245