首页 > 数据库技术 > 详细

sql中数据统计

时间:2019-12-31 13:26:06      阅读:77      评论:0      收藏:0      [点我收藏+]

今天来说一下使用sql统计数据。

用的H2数据库,用的是DBeaver连接工具。有三表,打印表PRINT_JOB,复印表COPY_JOB和扫描表SCANNER_JOB

(这段可以忽略)任务是要统计相同的SERIAL_NUMBER下三张表数据的,但是有要求三张表的SERIAL_NUMBER只要其中有一个表有值都要统计出来,每张表也需要先统计出相同SERIAL_NUMBER的count之和。

表PRINT_JOB结构(用到的字段是求和 JOBCOUNT,条件 MACHINE_ID)

技术分享图片

 

 表COPY_JOB结构(用到的字段是求和 COUNT, 条件 SERIAL_NUMBER)

技术分享图片

 

 表SCANNER_JOB结构(用到的字段是求和 COUNT, 条件 SERIAL_NUMBER)

技术分享图片

 

 (不要问字段名为什么这样设计,我已经在心里骂过了)

开始我想要full join...on,发现这个数据看不支持full join,不过没关系我们还有UNION ALL

最终解决方法,直接贴上sql

SELECT sum(total) alldata, SERIAL_NUMBER FROM (
select sum(JOBCOUNT) total,MACHINE_ID SERIAL_NUMBER from PRINT_JOB group by MACHINE_ID
UNION ALL
select sum(COUNT) total,SERIAL_NUMBER from COPY_JOB group by SERIAL_NUMBER
UNION ALL
select sum(COUNT) total,SERIAL_NUMBER from SCANNER_JOB group by SERIAL_NUMBER) tb_alldata
GROUP BY SERIAL_NUMBER ORDER BY alldata DESC LIMIT 0,5

结果ok.

技术分享图片

sql中数据统计

原文:https://www.cnblogs.com/wang-liang-blogs/p/12123492.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!