0
我并不是一个真正的开发人员,但我正在开发一个应用程序作为一个侧面项目,并且已经陷入了我试图解决的一个SQL查询中。这个应用程序具有标记图像的集合。我的表结构看起来是这样的:处理标记系统和收藏夹的Mysql查询
我查询了标签系统运作良好,但是,我不是在为加入收藏夹查询成功。目前我的查询如下所示:
SELECT i.*, IF (c.image IS NOT NULL,1,0) as favorited
FROM (images i, tag_map m, tags t)
LEFT JOIN favorites as c ON c.image = i.image
WHERE m.tag = t.tag
AND (t.tag_name IN ('umbrella'))
AND i.image = m.image
AND c.image = i.image
GROUP BY i.image
HAVING COUNT(i.image) = 1
虽然此查询有效,但它不包括那些记录在收藏夹表中有条目的行。下面简单(没有标签系统)查询工作:
SELECT i.*, c.*,
IF(c.image IS NOT NULL,1,0) as fave
FROM (images as i)
LEFT JOIN collection as c ON c.image = i.image
在正确的方向任何建议或分将真棒!谢谢!
我们停止使用过时的语法在1992年来到。加入我们。 – Strawberry
对不起,查询的哪一部分是陈旧的? – Millions
我的评论中有线索 – Strawberry