mysql 带多个条件的查询方式


Posted in MySQL onJune 05, 2021

mysql 带多个条件的查询

环境:mysql 5.7

当一个where语句中同时出现多个and 或者or时,需要将多个OR用小括号括起来再和AND进行“与”,或者将多个AND用小括号括起来再与OR进行“或”

mysql 多对多条件查询

两个表 user和role 中间表是user_role

mysql 带多个条件的查询方式

查询用户和角色的对应关系

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;

mysql 查询同一字段中同时满足多个条件

mysql 带多个条件的查询方式

mysql 带多个条件的查询方式

分析:

1,先查询出01号同学学习的课程

SELECT C FROM sc WHERE S='01'

mysql 带多个条件的查询方式

2,查询学习该相关课程的同学编号

SELECT S FROM sc WHERE C in 
(SELECT C FROM sc WHERE S='01')

mysql 带多个条件的查询方式

可以看到,我们分别查询了3次,所以出现多个结果,因为是or关系,所以每个选择了1、2、3课程的同学都全部取出,

3,现在需要将出现次数为3的编号取出

SELECT S FROM sc WHERE C in 
(SELECT C FROM sc WHERE S='01') 
GROUP BY S HAVING COUNT(S) =3

mysql 带多个条件的查询方式

看到编号为1、2、3、4的同学选了与01号同学一致的课程

4,与student表进行连表查询,取出相关信息

SELECT a.* FROM
student a LEFT JOIN sc b
ON 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 带多个条件的查询方式

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。

MySQL 相关文章推荐
详解mysql三值逻辑与NULL
May 19 MySQL
zabbix监控mysql的实例方法
Jun 02 MySQL
MySQL开启事务的方式
Jun 26 MySQL
MySQL系列之十二 备份与恢复
Jul 02 MySQL
MySQL基于索引的压力测试的实现
Nov 07 MySQL
分享MySQL常用 内核 Debug 几种常见方法
Mar 17 MySQL
简单聊一聊SQL注入及防止SQL注入
Mar 23 MySQL
Innodb存储引擎中的后台线程详解
Apr 03 MySQL
一文了解MYSQL三大范式和表约束
Apr 03 MySQL
MySQL 表锁定 LOCK和UNLOCK TABLES的 SQL语法
Apr 18 MySQL
MySQL查询日期时间
May 15 MySQL
MySQL下载安装配置详细教程 附下载资源
Sep 23 MySQL
Mysql 如何实现多张无关联表查询数据并分页
Jun 05 #MySQL
Mysql中存储引擎的区别及比较
浅谈mysql返回Boolean类型的几种情况
Jun 04 #MySQL
Mysql 设置boolean类型的操作
Jun 04 #MySQL
MySQL中的布尔值,怎么存储false或true
mysql外连接与内连接查询的不同之处
Mysql systemctl start mysqld报错的问题解决
Jun 03 #MySQL
You might like
mysql 全文搜索 技巧
2007/04/27 PHP
PHP实现的注册,登录及查询用户资料功能API接口示例
2017/06/06 PHP
php面试中关于面向对象的相关问题
2019/02/13 PHP
微信公众平台开发教程⑤ 微信扫码支付模式介绍
2019/04/10 PHP
Laravel 5.4前后台分离,通过不同的二级域名访问方法
2019/10/13 PHP
javascript中"/"运算符常见错误
2010/10/13 Javascript
jquery中的 $("#jb51")与document.getElementById("jb51") 的区别
2011/07/26 Javascript
JQuery扩展插件Validate 5添加自定义验证方法
2011/09/05 Javascript
javascript打印大全(打印页面设置/打印预览代码)
2013/03/29 Javascript
JS实现下拉框的动态添加(附效果)
2013/04/03 Javascript
jquery设置控件位置的方法
2013/08/21 Javascript
alert出数组中的随即值代码
2014/09/25 Javascript
使用控制台破解百小度一个月只准改一次名字
2015/08/13 Javascript
JavaScript利用HTML DOM进行文档操作的方法
2016/03/28 Javascript
jquery判断checkbox是否选中及改变checkbox状态的实现方法
2016/05/26 Javascript
详解Vue 普通对象数据更新与 file 对象数据更新
2017/04/26 Javascript
javascript 中模板方法单例的实现方法
2017/10/17 Javascript
react 实现页面代码分割、按需加载的方法
2018/04/03 Javascript
详解mpvue小程序中怎么引入iconfont字体图标
2018/10/01 Javascript
element-ui组件table实现自定义筛选功能的示例代码
2019/03/15 Javascript
javascript设计模式 ? 代理模式原理与用法实例分析
2020/04/16 Javascript
[47:31]完美世界DOTA2联赛PWL S3 INK ICE vs DLG 第一场 12.12
2020/12/16 DOTA
在windows下快速搭建web.py开发框架方法
2016/04/22 Python
numpy.delete删除一列或多列的方法
2018/04/03 Python
Python贪心算法实例小结
2018/04/22 Python
详解python单元测试框架unittest
2018/07/02 Python
如何优雅地处理Django中的favicon.ico图标详解
2018/07/05 Python
在python中对变量判断是否为None的三种方法总结
2019/01/23 Python
使用python实现画AR模型时序图
2019/11/20 Python
matplotlib运行时配置(Runtime Configuration,rc)参数rcParams解析
2021/01/05 Python
viagogo法国票务平台:演唱会、体育比赛、戏剧门票
2017/03/27 全球购物
zooplus意大利:在线宠物商店
2019/08/07 全球购物
教师自我鉴定
2013/12/13 职场文书
理财计划书
2014/08/14 职场文书
2014年学习全国道德模范事迹思想汇报
2014/09/15 职场文书
2015年小学语文工作总结
2015/05/25 职场文书