我有一个不那么简单(也许很简单)的 MySQL 查询问题。
我试图得到这样的结果:
[users][disabled_users][venue_name]
所以结果会是这样的:
5、2、AABB
2、0、ABCC
我得到的结果是:
5、2、AABB
2, 2, ABCC <-- 问题是不管它找到 2 个结果
这是我当前的查询:
SELECT
count(t.uid) as users, /* GET COUNT OF ACTIVE USERS GROUPED BY VENUE ID*/
t3.vid as venue_id /* SOLUTION */
(
SELECT sum(t1.uid) as users /* GET COUNT OF DISABLED USERS GROUPED BY VENUE ID */
FROM t1
JOIN t2 ON (t1.sid = t2.id)
JOIN t3 ON (t2.cid = t3.id)
WHERE t1.tid = 3 AND t3.vid = venue_id /* SOLUTION */
GROUP BY t3.vid
) as disabledUsers
FROM t1
JOIN t2 ON (t1.sid = t2.id)
JOIN t3 ON (t2.cid = t3.id)
WHERE t1.tid = 2
GROUP BY t3.vid;
编辑:解决方案由 /* SOLUTION */ 标记,我添加了两行,其中一行选择了场地 id (vid),为其提供了场地 ID 的别名,并在我的内部选择中添加了一个额外的条件。