连接表,计数和日期
Joining tables, with counts, and dates
我想加入两个 table 并根据日期从一个中检索计数。
我有一个tableaccess_points:
access_points_id, access_points_name
和另一个 table access_points_launched:
access_points_launched_id, access_points_name, launched_date
我想 return 所有 access_points 计算当前日期在 access_points_launched 中有多少条目:
Access Point, Launched Count, Date
WIFI_point, 2, 05/01/2015
FREE_INTERNET, 0, 05/01/2015
SPRINT_INTERNET, 5, 05/01/2015
我不希望计数包括任何其他日期。
有什么想法吗?
您可以在子查询中获得聚合计数,并且可以执行 left join
和 access_points table 以获得所需的结果。
select a.access_points_name, aggr.totalCount , curdate()
from access_points a
left join ( select access_points_name, count(*) as totalCount
from access_points_launched
where date(launched_date) = curdate()
group by access_points_name
) aggr
on aggr.access_points_name = a.access_points_name
我想加入两个 table 并根据日期从一个中检索计数。
我有一个tableaccess_points:
access_points_id, access_points_name
和另一个 table access_points_launched:
access_points_launched_id, access_points_name, launched_date
我想 return 所有 access_points 计算当前日期在 access_points_launched 中有多少条目:
Access Point, Launched Count, Date
WIFI_point, 2, 05/01/2015
FREE_INTERNET, 0, 05/01/2015
SPRINT_INTERNET, 5, 05/01/2015
我不希望计数包括任何其他日期。
有什么想法吗?
您可以在子查询中获得聚合计数,并且可以执行 left join
和 access_points table 以获得所需的结果。
select a.access_points_name, aggr.totalCount , curdate()
from access_points a
left join ( select access_points_name, count(*) as totalCount
from access_points_launched
where date(launched_date) = curdate()
group by access_points_name
) aggr
on aggr.access_points_name = a.access_points_name