2011-04-21 90 views
2

嘿家伙。这是我的它是如何工作表:计算另一张表的匹配记录的一个记录表

enter image description here

我希望能够计算的看法是,在另一个表一致的记录数(观点是唯一包含用户的IP),用于记录,对比如我做了GET请求和SQL查询就会发现比赛和计数的已收集每个记录视图数,所以它会显示这样的事情:

GET查询:stack

显示:

record_id | keyword | total_views 
---------------------------------------------------- 
     2  |  stack  |   2 
---------------------------------------------------- 
     5  |  stack  |   1 

正如你可以看到表中有2意见为record_id21视图record_id5,等等。你明白我的意思吗?我很难知道如何做到这一点。

干杯。

回答

4
SELECT r.*, COUNT(v.record_id) 
FROM records r 
LEFT JOIN 
     views v 
ON  v.record_id = r.record_id 
WHERE r.keyword = 'stack' 
GROUP BY 
     r.record_id 

创建以下指标:

records (keyword, record_id) 
views (record_id) 

这种工作速度快。

+0

优秀,作品相当不错。 – MacMac 2011-04-21 15:02:57

0
select `record_id`, `keyword`, count(*) as `total_views` 
     from `views` join `records` using (`record_id`) 
     where `keyword`='stack' 
     group by `record_id` 
相关问题