mysql实现多表关联统计(子查询统计)示例
作者:flysnownet 时间:2024-01-19 18:53:26
本文实例讲述了mysql实现多表关联统计的方法。分享给大家供大家参考,具体如下:
需求:
统计每本书打赏金额,不同时间的充值数据统计,消费统计,
设计四个表,book 书本表,orders 订单表 reward_log打赏表 consume_log 消费表 ,通过book_id与book表关联,
问题:
当关联超过两张表时导致统计时数据重复,只好用子查询查出来,子查询只能查一个字段,这里用CONCAT_WS函数将多个字段其拼接
实现:
查询代码如下
SELECT
b.id,
b.book_name,
sum( IF ( o.create_time > 0 && o.create_time < 9999999999, o.price, 0 ) ) today_pay_money,
sum( IF ( o.create_time > 0 && o.create_time < 9999999999, 1, 0 ) ) today_pay_num,
sum( IF ( o.create_time > 999 && o.create_time < 9999, o.price, 0 ) ) yesterday_pay_money,
sum( IF ( o.create_time > 999 && o.create_time < 9999, 1, 0 ) ) yesterday_pay_num,
sum(o.price) total_pay_money,
sum( IF ( o.create_time > 9999 && o.create_time < 99999, 1, 0 ) ) total_pay_num,
( SELECT SUM( total_score ) FROM book_reward_log WHERE book_id = b.id ) total_score,
(
SELECT
CONCAT_WS(
',',
SUM( IF ( create_time > 0 && create_time < 998, score, 0 ) ),
SUM( IF ( create_time > 9999 && create_time < 99998, score, 0 ) ),
SUM( IF ( create_time > 99999 && create_time < 999998, score, 0 ) )
)
FROM
book_consume_log
WHERE
book_id = b.id
) score
FROM
book_book b
LEFT JOIN book_orders o ON b.id = o.bid
GROUP BY
b.id
查询结果
score 为三个消费数,以逗号隔开
性能分析
希望本文所述对大家MySQL数据库计有所帮助。
来源:https://blog.csdn.net/flysnownet/article/details/90067875
标签:mysql,多表关联统计,子查询统计
0
投稿
猜你喜欢
Python数据分析之双色球统计单个红和蓝球哪个比例高的方法
2022-08-13 07:55:01
python中fastapi设置查询参数可选或必选
2021-11-04 12:25:18
CSS content, counter-increment 和 counter-reset详解[译]
2009-06-02 12:51:00
asp base64加解密函数代码
2011-03-31 11:02:00
perl中的范围声明our-my-local介绍
2022-12-15 02:21:50
Python操作列表的常用方法分享
2021-06-02 12:41:29
python关于excel多个sheet的导入导出方式
2021-03-15 04:40:19
DOS命令行窗口mysql中文显示乱码问题解决方法
2024-01-26 13:53:44
对python抓取需要登录网站数据的方法详解
2023-01-18 04:58:41
js树插件zTree获取所有选中节点数据的方法
2024-05-02 16:20:55
pytest官方文档解读fixtures的autouse
2023-06-22 01:18:58
SQL实战演练之网上商城数据库用户信息数据操作
2024-01-15 10:26:39
使用keras做SQL注入攻击的判断(实例讲解)
2024-01-25 12:40:36
用一个案例讲解SQL Server数据库恢复
2008-11-28 14:17:00
WEB2.0网页制作标准教程(10)自适应高度
2008-02-19 19:21:00
Python实现的微信好友数据分析功能示例
2023-09-18 06:00:21
对json字符串与python字符串的不同之处详解
2023-11-22 04:35:39
Mysql数据库监听binlog的开启步骤
2024-01-26 03:50:36
Python phone模块获取手机号归属地 区号 运营商等信息demo
2023-10-09 10:36:08
Go语言编程中字符串切割方法小结
2023-06-16 01:41:24