关于MySQL多表联查并求和计算?
问题描述
是这样的一个情况 这里有三张表 分别是用户user,订单 trade ,和资金记录 user_money_record现在要根据用户来统计他们的订单总金额和账户余额以及充值总金额
user表id realname money1 张xx 1002 王xx 5003 李xx 1500
tradeid uid realmoney 1 2 50002 1 10003 2 50004 3 100005 1 3500
user_money_recordid uid money1 2 50002 1 50003 2 20004 2 30005 3 50006 3 5000
表结构及数据如上求统计他们的订单总金额和账户余额以及充值总金额
谢谢!
问题解答
回答1:我猜想你可能是要这样的
select u.name,t.realmoney,umr.money from user uleft join (select uid,sum(realmoney) as realmoney from trade group by uid) t on t.uid = u.idleft join(select uid,sum(money) as money from user_money_record group by uid) umr on umr.uid = uid回答2:
如果user表的信息是最完整的,应该是这样的:
SELECT *FROM (SELECT id, sum(money) FROM user GROUP BY id) t1 LEFT JOIN (SELECT id, sum(realmoney) FROM trade GROUP BY id) t2 ON t1.id = t2.id LEFT JOIN (SELECT id, sum(money) FROM user_money_record GROUP BY id) t3 ON t1.id = t3.id回答3:
对于这样的情况 假如数据量过大的情况如何处理
相关文章:
1. javascript - 如何用最快的速度C#或Python开发一个桌面应用程序来访问我的网站?2. java - springMVC配置的controller无法返回jsp文件3. javascript - weex和node,js到底是怎样一个关系呢?4. javascript - 项目用IE浏览器打开修改前端内容,后台数据修改了,但是前端页面内容不变,用谷歌浏览器测试前端页面可以刷新,求大神解决。5. mysql 存储过程 和 函数有什么用??6. python - 关于beautifulsoup获取文档内容7. android的checkbox在xml添加和在java代码中添加样式不一样?8. javascript - 看一些高手写代码单独用 “$”和“_” 来表示变量,什么时候单独使用这两个字符?9. 前端 - 使用vue2服务端渲染的时候,如何在服务端请求数据,然后给vue渲染10. mysql - jdbc的问题
