【发布时间】:2016-12-28 16:33:22
【问题描述】:
我做了一个查询,显示了我想要的结果(足够接近)...但它并不完美。
我正在计算每个用户的注册数量..
SQL:
SELECT us.name, _reg FROM tb_user AS us
LEFT JOIN tb_register as rg ON rg.iduser = us.iduser
INNER JOIN
(select rg.iduser, count(*)
FROM tb_register AS rg
group by rg.iduser)
AS _reg ON rg.iduser = _reg.iduser
GROUP BY us.name, _reg
我得到的结果是……
+-----------+-----------------+
| name | _reg |
+-----------+-----------------+
| example_A | (id_A, count_A) |
+-----------+-----------------+
| example_B | (id_B, count_B) |
+-----------+-----------------+
但我真正想要的只是名称和行数.. 我在子查询中使用“rg.iduser”来引用这个 INNER JOIN,但正因为如此,我在结果中得到了“iduser”。
有没有更好的方法来显示我想要的东西.. 或者在这个查询的结果中隐藏“iduser”?
谢谢..
【问题讨论】:
标签: sql postgresql select join subquery