Mysql
 sql >> Base de données >  >> RDS >> Mysql

Sous-requête mySQL corrélée

Vous essayez d'accéder à Item.idItem à l'intérieur de la sous-requête, mais il n'y est pas disponible. Vous devriez utiliser quelque chose comme ceci :

SELECT 
    Item.idDish, 
    Item.dateAdded, 
    Item.dateModified, 
    Item.fidLocation, 
    Item.category, 
    Item.description, 
    Item.price, 
    Item.name, 
    Item.fullImageName, 
    Item.thumbnailImageName, 
    sub.rating
FROM Item 
JOIN 
(
    SELECT fidItem, AVG(ItemReview.rating) AS rating 
    FROM ItemReview 
    GROUP BY ItemReview.fidItem
) AS sub
   ON sub.fidItem = Item.idItem
WHERE Item.fidLocation = '63';