Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/254.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 如何获得最大数量的不同值_Php_Mysql_Count_Distinct - Fatal编程技术网

Php 如何获得最大数量的不同值

Php 如何获得最大数量的不同值,php,mysql,count,distinct,Php,Mysql,Count,Distinct,我试图在数据库中找到最大数量的不同值。到目前为止,我掌握的代码是: $highestStats = 0; $highest = $bdd->query('SELECT count(DISTINCT month) FROM stats')->fetchColumn(); while($highestData = $highest) { if ($highestStats < $highestData['month']) { $highestStats =

我试图在数据库中找到最大数量的不同值。到目前为止,我掌握的代码是:

$highestStats = 0;
$highest = $bdd->query('SELECT count(DISTINCT month) FROM stats')->fetchColumn();
while($highestData = $highest) {
    if ($highestStats < $highestData['month']) {
        $highestStats = $highestData['month'];
    }
}
echo $highestStats;
这个代码不起作用

我的例子是这样的:数据库中有一个月的列表,例如二月列了4次,三月列了9次,四月列了7次。基本上我想要$highestStats重新运行9。i、 e.最常用月份出现的次数

我应该怎么做,$bdd是一个PDO MySQL连接

非常感谢您的帮助

干杯 吉姆

试试这个:

select c,month from (SELECT count(month) as c,month from states group by month)temp order by c desc limit 1;

您认为可以使用子查询来执行此操作:-

SELECT MAX(month_occurs)
FROM
(
    SELECT `month`, COUNT(*) AS month_occurs
    FROM stats 
    GROUP BY `month`
) Sub1
或者避免子查询,但使用order by/limit

SELECT `month`, COUNT(*) AS month_occurs
FROM stats 
GROUP BY `month`
ORDER BY month_occurs DESC
LIMIT 1

早在那天,他们就有这样的顺序运算符,最上面的一个使用子查询完成了这个任务,尽管我似乎无法让第二个示例正常工作。感谢您的帮助和解决方案。