使用MySQL SQL查询计算另一张表中字段的总和
P粉244155277
P粉244155277 2024-04-06 19:39:29
[MySQL讨论组]

我有一个这样的模式:具有属性“user_id”和“username”的用户表 以及具有属性“customer_id”(user_id 的 FK)和“finalPrice”的订单表 数据库架构 我想要获得所有订单组合中价格最高的用户(基本上是订单的所有 FinalPrice 值的总和,其中 customer_id = user_id) 无法完全想出解决方案,因此将感谢您的支持

select sum( (select o.final_price from `order` o where u.user_id=o.customer_id)) 
from user u group by u.user_id

是我尝试过的,但我不断遇到 “子查询返回超过 1 行” 错误消息。尝试阅读文档,但我对 SQL 仍然非常缺乏经验。

P粉244155277
P粉244155277

全部回复(1)
P粉710478990

根据您的查询 您不能像这样使用 SUM 函数,而是使用内部的 SUM,这就是为什么它会抛出类似 Subquery 返回超过 1 行的错误

SELECT  
u.user_id,
(SELECT SUM(o.final_price) FROM `order` o WHERE u.user_id=o.customer_id)
FROM 
user u 
GROUP BY u.user_id;
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号