我有两个桌子user_results
,user_shares
user_results
具有:
id - pk
platform - string
country - string
created_at - timestamp
user_shares
具有:
id - pk
user_result_id - integer
created_at - timestamp
这是我的查询:
select
count(user_results.id) as results,
count(user_shares.id) as shares,
user_results.platform as platform
from
user_results
left join
user_shares on user_results.id = user_shares.user_result_id
group by
platform
这是一个带有模式和有问题的查询的sql小提琴:http : //sqlfiddle.com/#!9/739a3/2
现在,正如您在小提琴上看到的那样,每个平台我只有1个结果,但是results
计数显示(我猜)“没有共享的结果计数+共享计数”
我做错了什么?
您需要计数distinct user_results.id
,因为联接的表会复制其行:
select
count(distinct user_results.id) as results,
count(user_shares.id) as shares,
user_results.platform as platform
from
user_results
left join
user_shares on user_results.id = user_shares.user_result_id
group by
platform
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句