为了账号安全,请及时绑定邮箱和手机立即绑定

Mysql 有用户表、标签表,如何查询同时拥有某几个标签的用户?

Mysql 有用户表、标签表,如何查询同时拥有某几个标签的用户?

哆啦的时光机 2019-02-07 11:07:35
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

);


查看完整回答
反对 回复 2019-03-13
?
青春有我

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 


查看完整回答
反对 回复 2019-03-13
  • 3 回答
  • 0 关注
  • 1179 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信