mysql升级到8后出错,只剩下组出错

yhxst69z  于 2021-06-23  发布在  Mysql
关注(0)|答案(1)|浏览(425)

这行告诉我错误:
错误:select列表的表达式#1不在group by子句中,并且包含未聚合列“hng#u 1.tags.id”,该列在功能上不依赖于group by子句中的列;这与sql\u mode=only\u full\u group by不兼容

foreach($groups as $group)
    {
            $query = mysqli_query($verbindung, "SELECT * FROM (SELECT *, COUNT(id) AS c FROM tags WHERE typ='" . mysqli_real_escape_string($verbindung, $group) . "' GROUP BY slug ORDER BY c DESC LIMIT 9) AS i ORDER BY i.tag ASC") or die("Error: " . mysqli_error($verbindung));

            while ($row = mysqli_fetch_array($query)) {
                    $tmp_tags[] = $row;
            }
    }

如何更改查询以修复此错误?

xtupzzrd

xtupzzrd1#

对于其他感兴趣的人,我解决了这个问题。我将id添加到group by中,这样它现在就知道要选择什么了。

GROUP BY slug, id

修好它。

相关问题