Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/268.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php mysql选择用于计算百分比的_Php_Mysql - Fatal编程技术网

Php mysql选择用于计算百分比的

Php mysql选择用于计算百分比的,php,mysql,Php,Mysql,我有一个表,其中count作为一个字段,username作为另一个字段。通过使用此查询,我已成功获取了该月所有记录的总数: select count(*) from forms where Month(date) = MONTH(CURDATE()) AND YEAR(CURDATE()); select u_name, count(*) AS numb from forms where Month(date) = MONTH(CURDATE()) AND YEAR

我有一个表,其中count作为一个字段,username作为另一个字段。通过使用此查询,我已成功获取了该月所有记录的总数:

select count(*) 
from forms 
where Month(date) = MONTH(CURDATE()) 
    AND YEAR(CURDATE());
select u_name, count(*) AS numb 
from forms 
where Month(date) = MONTH(CURDATE()) 
    AND YEAR(CURDATE()) 
GROUP BY U_name 
ORDER BY numb DESC;`
我还通过此查询获取了各个用户的条目:

select count(*) 
from forms 
where Month(date) = MONTH(CURDATE()) 
    AND YEAR(CURDATE());
select u_name, count(*) AS numb 
from forms 
where Month(date) = MONTH(CURDATE()) 
    AND YEAR(CURDATE()) 
GROUP BY U_name 
ORDER BY numb DESC;`
所以…第一个给了我类似“12”的东西…换句话说,10月份输入的12条记录(比如说)。第二个查询为我提供了如下信息:

约翰5 玛丽7

我正在苦苦思索的是一个查询,它会给我每个用户条目的百分比……例如,John的是41%。12个条目中有5个条目


希望我说的很清楚……感谢您的帮助。

将计算总数的查询与分组查询结合起来

SELECT u_name, COUNT(*) AS numb, COUNT(*)*100/total AS pct
FROM forms
CROSS JOIN (SELECT COUNT(*) AS total
            FROM forms
            WHERE MONTH(date) = MONTH(NOW()) AND YEAR(date) = YEAR(NOW())) AS x
WHERE MONTH(date) = MONTH(NOW()) AND YEAR(date) = YEAR(NOW())

您将需要使用子查询来执行所需的操作。这不是世界上最简单的事情,但它会成功的!前一个类似的解决方案是否会有所帮助:您是否在
和年份(CURDATE())
中遗漏了某些内容?是否应该将其与某些内容进行比较?您提到您有一个名为
count
的字段。你想如何在查询中使用它?这就是Barmar。谢谢我只需要找出如何减少小数点,因为它给我的结果像44.444,但除此之外,感谢大家!!!