我的代码给了我以下错误:
无效使用群组功能
$query = mysql_query("SELECT `text` FROM `text` WHERE `id`=max(id)");
if(!$query)
die(mysql_error());
while($row = mysql_fetch_array($result))
{
echo $row['text'];
}
我的错误在哪里?
答案 0 :(得分:5)
如果您想要具有最高ID的行,您可以使用:
SELECT text FROM text ORDER BY id DESC LIMIT 1
答案 1 :(得分:2)
WHERE
子句影响单个行,而HAVING
子句影响聚合(GROUP BY
子句的结果)。行标准必须限制为WHERE
子句,必须在HAVING
子句中使用聚合函数(如MAX)。
你可以这样做:
SELECT *
FROM text
WHERE id = (SELECT MAX(id) FROM text);