Mysql 有用户表、标签表,如何查询同时拥有某几个标签的用户。
3 回答
守候你守候我
TA贡献1802条经验 获得超10个赞
你那个查询的条件明显就不对
// tags表 `tags`.`title` = '聪明' AND `tags`.`title` = '勤奋' 这种数据根本就不存在
SELECT * FROM user
WHERE id IN (
SELECT uid FROM tags WHERE title IN ('聪明', '勤奋') GROUP BY uid HAVING count(uid) = 2
);
青春有我
TA贡献1784条经验 获得超8个赞
select user.*,count(tags.uid)as num from user left join tags on `user`.id = tags.uid
where (`tags`.`title` = '聪明' OR `tags`.`title` = '勤奋') group by tags.uid
having count(tags.uid) > 1
- 3 回答
- 0 关注
- 1179 浏览
添加回答
举报
0/150
提交
取消