MySQL-WHERE语句仅适用于SELECT语句的一部分

MySQL-WHERE语句仅适用于SELECT语句的一部分,mysql,select,where,Mysql,Select,Where,我想将COUNT语句除以SUM语句,其中WHERE语句只适用于COUNT语句 下面是一个示例表: id eligible not_eligible call 1 0 1 1 2 1 0 1 3 1 0 1 我的目标是: 选择计数(ID)/总和(调用) 来自我的表格 其中不符

我想将COUNT语句除以SUM语句,其中WHERE语句只适用于COUNT语句

下面是一个示例表:

id     eligible     not_eligible     call

1         0            1               1
2         1            0               1
3         1            0               1
我的目标是:
选择计数(ID)/总和(调用)
来自我的表格
其中不符合条件=1


我希望WHERE语句只应用于COUNT语句。我想退回1/3(33%),而不是1/1(100%)。您知道如何使WHERE语句仅应用于SELECT语句的一部分吗?

在Mysql中,您可以使用sum函数中的条件来获得所需的计数,sum with condition将得到布尔值0或1,您可以根据不同的条件进行计数,此外,您正在使用聚合函数,但没有将它们分组,即(按somecol分组),因此这将应用于整个表,并将其视为一个组

SELECT SUM(not_eligible = 1) / SUM(`Call`) 
FROM my_table 

谢谢你,哈立德·朱奈德先生。用我的真实数据,我能够在求和函数中包含多个条件,而且它工作得非常好!