我从同一个表中提取所有子查询a
,但需要列中的信息b.7dayclicks
,c.7dayclicks
并且d.14dayclicks
。
查询是这样的:
select
a.higher_tier_id,
a.lower_tier_id,
b.7dayclicks,
c.7dayclicks,
d.14dayclicks
from
a,
(select higher_tier_id, 7dayclicks
from a
where day >= curdate() - 7
group by higher_tier_id) b,
(select lower_tier_id, 7dayclicks
from a where day >= curdate() - 7
group by lower_tier_id) c,
(select lower_tier_id, 14dayclicks
from a where day >= curdate() - 14
group by lower_tier_id) d
where
day >= curdate() - 3
and a.higher_tier_id = b.higher_tier_id
and a.lower_tier_id = c.lower_tier_id
and a.lower_tier_id = d.lower_tier_id
结果,它需要很长时间才能运行。我正在努力提高效率。任何帮助将不胜感激。
- 第一列给出了higher_id
- 第二列给出了lower_id
- 第 3 列给出了按 high_id 级别排序的 7 天点击次数
- 第 4 列给出了按 lower_id 级别排序的 7 天点击次数
- 第 5 列给出了按 lower_id 级别排序的 14 天点击次数
我确实认为肯定有一种方法可以在没有任何连接的情况下将所有内容放在一起,但我就是不知道如何..