0
我想从两个SQL查询的UNION ALL不同值,从他们的标签基于此查询。
SELECT t.id, t.tag, bd.owner, bp.param_value as role
FROM baseData db
LEFT JOIN baseParam bp ON bp.`status` = "active" AND bp.param_name = "role" AND bp.base_data_id = bd.id
RIGHT JOIN tag t ON t.base_data_id = bp.base_data_id AND t.`status` = "active"
WHERE bd.`status` = "active" AND bd.application = "template"
AND (((bp.param_value = "public" OR bp.param_value IS NULL)))
GROUP BY t.tag
UNION
SELECT t.id, t.tag, bd.owner, bp.param_value as role
FROM baseData bd
LEFT JOIN baseParam bp ON bp.`status` = "active" AND bp.param_name = "role" AND bp.base_data_id = bd.id
RIGHT JOIN tag t ON t.base_data_id = bp.base_data_id AND t.`status` = "active"
INNER JOIN resTemplate cr ON cr.base_data_id = bd.id
WHERE bd.`status` = "active" AND bd.application = "template" AND cr.`status` = "active"
AND (((bp.param_value = "private" OR bp.param_value IS NULL)))
GROUP BY t.tag;
这两个查询来自同一个表,唯一的区别是他们的角色是“公共”和“私人”。私人也有另一张桌子的考虑。该查询返回此表
此表,你可以在红盒子看到,在标签栏,集团被重复。以及其他一些标签名称。 我如何更改我的sql查询来过滤它,以便Tag列是不同的?
你想这两个排在结果中包括哪些内容? –
两者之一。我所需要的只是其中一个被包括在结果中。 –
你使用了什么数据库? – Blank