【发布时间】:2013-11-01 09:33:34
【问题描述】:
我需要一些关于 SQL 查询的帮助。我想计算 2 两个表中的条目数。我的第一个名为 tracking_adspace_views 的表从我制作的 Adspace 的每个视图中获取条目。在一天结束时,我想计算我最后一天有多少条目。第二张表tracking_clicks 统计了特殊广告空间的点击次数。因此,并非每个被查看的广告空间都有点击。所以最后我想要类似的东西
- 广告空间 ID 1 有 500 次查看和 3 次点击
- Adspace Id 2 拥有 340 次查看和 0 次点击
- 等等……
我的桌子是这样的
tracking_adspace_views
tracking_clicks
我的查询如下所示:
SELECT '2013-10-31',
views.tracking_adspace,
COUNT(views.tracking_adspace) AS tracking_adspace_views,
COUNT(clicks.tracking_adspace) AS tracking_adspace_clicks
FROM views
LEFT JOIN (
SELECT tracking_adspace,
COUNT(sub_c.tracking_adspace) AS tracking_adspace_clicks
FROM tracking_clicks as sub_c
GROUP BY sub_c.tracking_adspace
) AS clicks
ON clicks.tracking_adspace = views.tracking_adspace
WHERE views.tracking_time LIKE '2013-10-31%'
GROUP BY views.tracking_adspace
这会计算正确的观看次数,并且点击次数为 0 的位置也计算正确。但是,如果点击列中有点击,我会从视图中获得价值。感谢您的帮助:)
问候
【问题讨论】:
-
我觉得你的问题不是很清楚,你期待什么样的结果,你会得到什么?
-
为什么在这里使用
LIKE通配符 -tracking_time LIKE '2013-10-31%'