根据多个表中的数据计算平均值

时间:2016-08-07 01:49:10

标签: mysql sql

我想弄清楚如何在MySQL中实现这个目标

我有两张桌子:

1)服务表:

Serv_ID | Prov_ID | Serv_Date

11812 | CT18T005 | 2016年1月21日

11819 | CT18T005 | 2016年2月23日

11823 | CT18T006 | 2016年1月25日

11832 | CT18T010 | 2016年1月26日

11838 | CT18T010 | 2016年2月23日

11842 | CT18T007 | 2016年1月25日

11848 | CT18T007 | 2016年2月25日

12886 | CT18T006 | 2016年2月26日

12906 | CT18T005 | 2016年4月21日

12907 | CT18T005 | 2016年4月28日

12916 | CT18T010 | 2016年3月22日

12918 | CT18T010 | 2016年3月29日

12934 | CT18T007 | 2016年4月29日

13475 | CT18T010 | 2016年6月7日

2)提供者表:

Prov_ID | Prov_Start | Prov_End

CT18T001 | 2016-01-01 | 2016年6月30日

CT18T005 | 2016-01-01 | 2016年6月30日

CT18T006 | 2016-01-01 | 2016年5月13日

CT18T007 | 2016-01-01 | 2016年6月30日

CT18T010 | 2016-01-15 | 2016年6月30日

我需要计算报告期内每个提供商每月提供的平均服务单位(ASU)(2016年1月1日至2016年6月30日),同时考虑提供商的天数在这个月活跃。因此,2月份整个月有4家提供商活跃。提供商006在2016年1月1日至2016年5月15日期间有效,因此应计入1月至4月的整个月和5月的13天。

月份ASU /提供商

1月| 4 /(4 + 15/30)|假设一个月30天

二月| 4/5

...

...

六月

最终输出将是一个数字(每月ASU /提供者的平均值):总和(ASU /提供者)/ 6

任何帮助将不胜感激。

感谢。

0 个答案:

没有答案