【发布时间】:2010-03-23 09:20:31
【问题描述】:
我想计算来自 2 个(或可能更多表)的唯一登录数。
我试过这个:
SELECT count(distinct(l1.user_id))
FROM `log_1` l1
LEFT JOIN `log_2` l2
ON l1.userid = l2.userid;
但它给了我 l1 的结果。如果我没有在 li.userid (distinct) 上加上 l1,它会说“模棱两可”。
如何合并表,然后选择合并表的唯一登录名?
编辑:
已测试:我测试了 count(distinct(l1.userid)) 和 count(distinct(l2.userid))。它给了我不同的结果
【问题讨论】:
-
你能定义一下你所说的“组合表格”是什么意思吗?您想要出现在任一表中的用户吗?出现在两个表中的用户?还有什么?
-
@Mark Byers:我认为如果用户出现在两个表上会更准确吗?合并4张桌子真的需要很长时间,2分钟多,我现在还在等待。 (使用我上面的代码,将 LEFT JOIN 更改为 INNER JOIN)