MySQL数学函数-完成百分比-(添加2列,除法和乘法)

MySQL数学函数-完成百分比-(添加2列,除法和乘法),mysql,math,Mysql,Math,我试图在MySQL查询中计算一个百分比 我有一张桌子: Table: Domains id url_count checked tablekey_id 1 2 1 10 2 1 2 10 3 1 1 15 4 2 1 22 5 2 2 10 因此,数学是: ((SUM of

我试图在MySQL查询中计算一个百分比

我有一张桌子:

Table: Domains
id   url_count   checked   tablekey_id
1    2           1         10
2    1           2         10
3    1           1         15
4    2           1         22
5    2           2         10
因此,数学是:

((SUM of the `url_count` column where `checked` >= 2 and `tablekey_id` = 10) / (SUM of the `url_count` column where `tablekey_id` = 10)) *100)
上述方程式的数字如下所示: (3/5)*100=60%

谢谢大家!我不知道你可以在总数中加入if语句。我把我原来的问题措辞得很糟糕,所以我想发布我的解决方案,以防有人遇到同样的问题

SELECT (
(SUM(IF(`checked` >= 1, `url_count`, 0)) / SUM(`url_count`))*100
) AS percent
FROM `google_sort_backlink_domains`
WHERE `tablekey_id` = 10
尝试使用IF()函数,例如-

SELECT (
    SUM(IF(checked >= 2, url_count, 0)) / COUNT(IF(checked <= 2, 0, NULL))
  ) * 100
FROM table
选择(

SUM(IF(checked>=2,url\u count,0))/count(IF(checked@Devart的答案是100%正确的,但是您也可以使用
CASE
语法来完成此操作,如我下面所示

SELECT (
    SUM(CASE WHEN checked >= 2 THEN url_count ELSE 0 END) / COUNT(CASE WHEN checked <= 2 THEN 0 END)
  ) * 100
FROM table
选择(

SUM(勾选时的CASE>=2然后url\u count ELSE 0 END)/count(勾选时的CASE你的“问题”不会问任何问题。它应该包含一个以“?”结尾的疑问句。谢谢。我使用了不同的解决方案,但下次处理查询时,我会记住CASE语句。