两个左连接并包括一个计数?
Two Left Joins and including a Count?
我得到以下查询,其中包含一个连接多个标签的左连接。此查询有效。
SELECT
ap.userid,
ap.audioid,
u.id
(
SELECT GROUP_CONCAT(t.tagname)
FROM entitytag et
LEFT JOIN tags t on t.tagid = et.tagid
WHERE et.audioid = ap.audioid
) tagname
FROM audioposts ap
LEFT JOIN users u ON u.id = ap.userid
但现在我想添加另一个左连接,它计算来自 table 调用回复的每个 ap.audioid
的回复数量。有人知道如何添加这个额外的左连接吗?
这是用于计算对 GET 中指定 audioid 的回复的查询;
SELECT count('replyid') from replies WHERE opid = ?
但是如何将额外的左连接添加到第一个代码,以便我可以从每个 audioid
的回复 table 中获取回复计数?
没有左连接但阅读你的问题这应该有效:
SELECT
ap.userid,
ap.audioid,
u.id,
(
SELECT GROUP_CONCAT(t.tagname)
FROM entitytag et
LEFT JOIN tags t on t.tagid = et.tagid
WHERE et.audioid = ap.audioid
) tagname,
(
select count('replyid') from replies WHERE opid = ap.audioid
) as count
FROM audioposts ap
LEFT JOIN users u ON u.id = ap.userid
我得到以下查询,其中包含一个连接多个标签的左连接。此查询有效。
SELECT
ap.userid,
ap.audioid,
u.id
(
SELECT GROUP_CONCAT(t.tagname)
FROM entitytag et
LEFT JOIN tags t on t.tagid = et.tagid
WHERE et.audioid = ap.audioid
) tagname
FROM audioposts ap
LEFT JOIN users u ON u.id = ap.userid
但现在我想添加另一个左连接,它计算来自 table 调用回复的每个 ap.audioid
的回复数量。有人知道如何添加这个额外的左连接吗?
这是用于计算对 GET 中指定 audioid 的回复的查询;
SELECT count('replyid') from replies WHERE opid = ?
但是如何将额外的左连接添加到第一个代码,以便我可以从每个 audioid
的回复 table 中获取回复计数?
没有左连接但阅读你的问题这应该有效:
SELECT
ap.userid,
ap.audioid,
u.id,
(
SELECT GROUP_CONCAT(t.tagname)
FROM entitytag et
LEFT JOIN tags t on t.tagid = et.tagid
WHERE et.audioid = ap.audioid
) tagname,
(
select count('replyid') from replies WHERE opid = ap.audioid
) as count
FROM audioposts ap
LEFT JOIN users u ON u.id = ap.userid