J'ai un schéma comme celui-ci : table utilisateur avec les attributs "user_id" et "username" et une table de commandes avec les attributs "customer_id" (FK de user_id) et "finalPrice" schéma de base de données Je souhaite obtenir l'utilisateur avec le prix le plus élevé parmi toutes les combinaisons de commandes (essentiellement la somme de toutes les valeurs FinalPrice pour la commande, où customer_id = user_id) Je n'arrive pas à trouver une solution, donc tout soutien sera apprécié
select sum( (select o.final_price from `order` o where u.user_id=o.customer_id)) from user u group by u.user_id
est ce que j'ai essayé, mais je continue de recevoir le message d'erreur “子查询返回超过 1 行”
. J'ai essayé de lire la documentation, mais je suis encore très inexpérimenté avec SQL.
Basé sur votre demande Vous ne pouvez pas utiliser
comme çaSUM
函数,而是使用内部的 SUM,这就是为什么它会抛出类似Subquery 返回超过 1 行的错误