【发布时间】:2020-12-11 19:18:38
【问题描述】:
我有以下查询,其中包括连接多个标签的左连接。此查询有效。
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
但现在我想添加另一个左联接,它计算来自名为回复的表中对每个 ap.audioid 的回复数。有人知道如何添加这个额外的左连接吗?
这是用于计算从 GET 对指定 audioid 的回复的查询;
SELECT count('replyid') from replies WHERE opid = ?
但是如何将额外的左连接添加到第一个代码,以便我可以从回复表中获取每个 audioid 的回复计数?
【问题讨论】:
-
我认为
u.id之后缺少','? -
您可以添加一些示例数据+所需的输出吗? (文字,无图片)
-
警告:您对SQL Injections 持开放态度,应该使用参数化的prepared statements,而不是手动构建查询。它们由PDO 或MySQLi 提供。永远不要相信任何形式的输入!即使您的查询仅由受信任的用户执行,you are still in risk of corrupting your data。 Escaping is not enough!
标签: mysql count left-join concat