这篇文章将为大家详细讲解有关mysql中带多个条件的查询方式有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。Mysql 带多个条件的查询环境:mysql 5.7当一个where语句中同时出现
这篇文章将为大家详细讲解有关mysql中带多个条件的查询方式有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
环境:mysql 5.7
当一个where语句中同时出现多个and 或者or时,需要将多个OR用小括号括起来再和AND进行“与”,或者将多个AND用小括号括起来再与OR进行“或”
两个表 user和role 中间表是user_role
查询用户和角色的对应关系
select res.user_name,r.role_name from(select u.user_name,ur.role_id from user as u INNER JOIN user_role as ur where u.user_id=ur.user_id) as res INNER JOIN role as r where res.role_id=r.role_id;
分析:
SELECT C FROM sc WHERE S='01'
SELECT S FROM sc WHERE C in (SELECT C FROM sc WHERE S='01')
可以看到,我们分别查询了3次,所以出现多个结果,因为是or关系,所以每个选择了1、2、3课程的同学都全部取出,
SELECT S FROM sc WHERE C in (SELECT C FROM sc WHERE S='01') GROUP BY S HAVING COUNT(S) =3
看到编号为1、2、3、4的同学选了与01号同学一致的课程
SELECT a.* FROMstudent a LEFT JOIN sc bON a.S = b.S WHERE b.S in (SELECT S FROM sc WHERE C in (SELECT C FROM sc WHERE S='01') GROUP BY S HAVING COUNT(S) =3)GROUP BY a.S
关于“mysql中带多个条件的查询方式有哪些”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
--结束END--
本文标题: mysql中带多个条件的查询方式有哪些
本文链接: https://lsjlt.com/news/279212.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-10-23
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0