gpt4 book ai didi

php - 使用 GROUP BY 的 mysql 查询无法获取所有行

转载 作者:行者123 更新时间:2023-11-30 23:00:50 25 4
gpt4 key购买 nike

我有 2 个表:

奖项:

awardsid,
forumid

论坛:

forumid,
title

当我进行查询以获取所有论坛的奖励计数时,查询不会返回所有行。如果数据库包含 4 行,它只返回 3 行。结果总是比预期少 1 行。

$forumdata = $db->query_read(" SELECT COUNT(awards.forumid) AS awardscount,forum.title,awards.forumid
FROM " . TABLE_PREFIX . " awards AS awards
INNER JOIN " . TABLE_PREFIX . " forum AS forum ON (forum.forumid = awards.forumid)
GROUP BY awards.forumid ");
if($db->fetch_array($forumdata))
{

while ($awards = $db->fetch_array($forumdata))
{
$title .= $awards['title'];
$awardscount .= $awards['awardscount'];
echo $title.':'.$awardscount.'<br />';
}
}
else
{
echo "No Data";
}

最佳答案

您在 if 子句中获取了第一行,因此您正在回显从 2 到 n 的行。我不知道你是如何实现你的类来访问 mysql 的,所以你可以使用这样的东西:

echo isset($title) ? '' : 'No data';

在你的 while 循环之后,你当然应该按照现在的方式去掉你的 if/else 子句。

关于php - 使用 GROUP BY 的 mysql 查询无法获取所有行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24109735/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com