我有一个查询,我正在寻找一种方法来做一个子查询并将结果作为最后一列加入
这样的事情: 我当前的查询有效,与此类似:
SELECT * FROM users_table JOIN randomjoin here WHERE blah
我运行并希望集成到第一个查询中的第二个查询是:
SELECT COUNT(*) FROM #__community_fields_values WHERE field_id="16" AND value="'. $row->username .'"
所以我想要做的是在结果中创建一个额外的列,显示另一个查询的计数。总的来说,我可以按最后一栏对结果进行排序
有人可以帮我搞清楚吗?
答案 0 :(得分:1)
只要获得别名,就可以JOIN
针对子查询。
SELECT
users_table.*,
usercount.num
FROM
users_table
LEFT JOIN (
/* Added the value column and a GROUP BY to the subquery to return usernames & counts. */
SELECT
COUNT(*) AS num,
value
FROM #__community_fields_values
WHERE field_id=16
GROUP BY value
) usercount ON users_table.username = usercount.value