Mysql 我的查询需要数年时间+;分组
我有一个城市和城市分类广告网站。每个分类至少有一个类别 以下是模式(此处仅包含我们需要的字段): 我试图得到每个城市每个类别的分类广告总数。我想这是一个非常基本的问题,但遗憾的是,我的查询需要数年的时间(我不是开玩笑,它在10分钟后仍在运行,tv_分类表中只有10万行) 这是我的疑问,我是否遗漏了什么Mysql 我的查询需要数年时间+;分组,mysql,sql,performance,Mysql,Sql,Performance,我有一个城市和城市分类广告网站。每个分类至少有一个类别 以下是模式(此处仅包含我们需要的字段): 我试图得到每个城市每个类别的分类广告总数。我想这是一个非常基本的问题,但遗憾的是,我的查询需要数年的时间(我不是开玩笑,它在10分钟后仍在运行,tv_分类表中只有10万行) 这是我的疑问,我是否遗漏了什么 SELECT COUNT(*), c.village_id, cat.id as category FROM tv_classified c JOIN tv_classified_category
SELECT COUNT(*), c.village_id, cat.id as category
FROM tv_classified c
JOIN tv_classified_category cat
GROUP BY c.village_id, cat.id;
非常感谢,因为您没有指定
连接
条件,所以会对表执行交叉连接。因此,结果集中的行数将是另一个表中的100K*行
指定一个join
条件,查询应该可以
SELECT COUNT(*), c.village_id, cat.id as category
FROM tv_classified c
JOIN tv_classified_category cat on cat.classified_id = c.id
GROUP BY c.village_id, cat.id;
因为您没有指定
联接
条件,所以会对表执行交叉联接。因此,结果集中的行数将是另一个表中的100K*行
指定一个join
条件,查询应该可以
SELECT COUNT(*), c.village_id, cat.id as category
FROM tv_classified c
JOIN tv_classified_category cat on cat.classified_id = c.id
GROUP BY c.village_id, cat.id;
好吧,我完全是弱智,我怎么会错过这个。。。这是漫长的一天!谢谢你,我会尽快接受你的回答:)好吧,我完全是弱智,我怎么会错过这个。。。这是漫长的一天!谢谢,我会尽快接受你的回答:)