AVG中的使用计数

时间:2019-06-04 16:27:29

标签: sql select count average

我有两个选择,需要在AVG中使用。 理论上,AVERAGE = A + B / C。 我的价值是A + B和C。 我正在做作业,在那里有一张餐桌处方和一张餐桌。我需要了解2017年的AVG处方/预约。 例如,在2017年,我有6个约会和4个处方。因此AVG = 4/6。

This gives me A+B= 4.

select COUNT(*) FROM prescription
WHERE date_hour like '2017%';



This gives me C= 6.

select COUNT(*) FROM appointment
WHERE date_hour like '2017%';

我做了一些研究,没有运气。我是MYSQL的新手。如何计算这两个选择的AVG?

谢谢

2 个答案:

答案 0 :(得分:1)

您可以直接在SELECT语句中进行除法:

select
  (select COUNT(*) FROM prescription WHERE date_hour like '2017%') /
  (select COUNT(*) FROM appointment WHERE date_hour like '2017%') as averageresult

答案 1 :(得分:0)

如果您只为SELECT语句中的这一行执行操作,则可以执行以下操作:

 SELECT NUM/DEN FROM (
 SELECT COUNT(*) NUM FROM PRESCRIPTION
 WHERE DATA_HOUR LIKE '2017%')
 ,
 (SELECT COUNT(*) DEN FROM APPOINTMENT
 WHERE DATA_HOUR LIKE '2017%')

如果您需要按多个DATA_HOURS对其进行分组,则需要有关聚合方法的更多信息。