gpt4 book ai didi

mysql - Count(t.id) 连接上的 AS 计数导致两个 `count` 列?

转载 作者:行者123 更新时间:2023-11-29 07:07:45 25 4
gpt4 key购买 nike

Count(t.id) AS count on join 导致名为 count 的两列,但第一列全为 0。
是什么导致空列重复错误?

SELECT t . * , COUNT(t.id) AS count
FROM (
SELECT `id` , `date`
FROM `searches`
WHERE `date` > '2016-12-06'
ORDER BY `date` DESC
LIMIT 0 , 10000
) q
JOIN `searches` t ON t.id = q.id
GROUP BY `query`
ORDER BY `count` DESC
LIMIT 0 , 30

图像显示全为 0 的计数列不应显示在临时表中。

count column with all 0's should not be showing up in temp table.

奖励:有没有明显的方法来加速这个查询?

显示第 0 - 29 行(总共 30 行,查询耗时 0.2904 秒)

最佳答案

当您的第一行中有 t.* 时,您将从表中提取每一列。这将包括计数列。然后您正在计算一个名为 count 的计数。这就是为什么你有两个计数列。表中的计数列可能已全部插入零。

如果您不希望列全为零,则必须使查询如下所示:

SELECT t.id, t.date, t.ip, t.fbuild, t.useragent, t.query , COUNT(t.id) AS count
FROM (
SELECT `id` , `date`
FROM `searches`
WHERE `date` > '2016-12-06'
ORDER BY `date` DESC
LIMIT 0 , 10000
) q
JOIN `searches` t ON t.id = q.id
GROUP BY `query`
ORDER BY `count` DESC
LIMIT 0 , 30

关于mysql - Count(t.id) 连接上的 AS 计数导致两个 `count` 列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41024825/

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