我有一个称为“气缸”的MySQL表。 pidreportno这两个列。

pid       |  reportno
13-2021   |     1
14-2025   |     1
13-2021   |     2
13-2021   |     3
15-2034   |     1
14-2025   |     2


我想为组找到最高的reportno,以便可以使用下一个reportno添加到表中。

我有这个:

$query = "SELECT * FROM cylinders GROUP BY pid ORDER BY reportno DESC LIMIT 1";
$result = mysql_query($query);
$row = mysql_fetch_array($result);
$lastrpt = $row["reportno"];
$nextrpt = $lastprt + 1;


但是$lastrpt变量的值为0。我在做什么错?

最佳答案

我认为查询不会起作用,因为您必须将reportno添加到group by子句中或将其用于聚合。尝试以下方法。

SELECT pid, MAX(ReportNo) FROM cylinders GROUP BY pid ORDER BY reportno DESC LIMIT 1

关于php - 查找一个MySQL组的最大值,并将其分配给一个变量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30472964/

10-10 20:05