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 Show Profile
Apr 05 MySQL
详解MySQL的半同步
Apr 22 MySQL
MySQL InnoDB ReplicaSet(副本集)简单介绍
Apr 24 MySQL
Mysql官方性能测试工具mysqlslap的使用简介
May 21 MySQL
正确使用MySQL INSERT INTO语句
May 26 MySQL
Mysql systemctl start mysqld报错的问题解决
Jun 03 MySQL
MySQL 发生同步延迟时Seconds_Behind_Master还为0的原因
Jun 21 MySQL
MySQL深度分页(千万级数据量如何快速分页)
Jul 25 MySQL
Mysql调整优化之四种分区方式以及组合分区
Apr 13 MySQL
浅谈MySql update会锁定哪些范围的数据
Jun 25 MySQL
MySQL添加索引特点及优化问题
Jul 23 MySQL
详解MySQL的内连接和外连接
May 08 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
第五节 克隆 [5]
2006/10/09 PHP
php设计模式 Interpreter(解释器模式)
2011/06/26 PHP
php切割页面div内容的实现代码分享
2012/07/31 PHP
如何使用PHP批量去除文件UTF8 BOM信息
2013/08/05 PHP
php中3种方法删除字符串中间的空格
2014/03/10 PHP
php lcg_value与mt_rand生成0~1随机小数的效果对比分析
2017/04/05 PHP
ThinkPHP5&5.1实现验证码的生成、使用及点击刷新功能示例
2020/02/07 PHP
jquery操作select大全
2014/04/25 Javascript
JavaScript原生对象之String对象的属性和方法详解
2015/03/13 Javascript
ES6学习笔记之Set和Map数据结构详解
2017/04/07 Javascript
JS 实现banner图片轮播效果(鼠标事件)
2017/08/04 Javascript
Django+Vue.js搭建前后端分离项目的示例
2017/08/07 Javascript
JS简单获取并修改input文本框内容的方法示例
2018/04/08 Javascript
vue实现axios图片上传功能
2019/08/20 Javascript
vue中对象数组去重的实现
2020/02/06 Javascript
基于Element封装一个表格组件tableList的使用方法
2020/06/29 Javascript
Python的Django框架中settings文件的部署建议
2015/05/30 Python
tensorflow: 查看 tensor详细数值方法
2018/06/13 Python
Python查找最长不包含重复字符的子字符串算法示例
2019/02/13 Python
Python基础学习之函数方法实例详解
2019/06/18 Python
Python在Matplotlib图中显示中文字体的操作方法
2019/07/29 Python
在vscode中配置python环境过程解析
2019/09/28 Python
使用Python的Turtle库绘制森林的实例
2019/12/18 Python
Python利用多线程同步锁实现多窗口订票系统(推荐)
2019/12/22 Python
pyCharm 实现关闭代码检查
2020/06/09 Python
python如何调用java类
2020/07/05 Python
索尼巴西商店:Sony巴西
2019/06/21 全球购物
澳大利亚波希米亚风时尚品牌:Tree of Life
2019/09/15 全球购物
主键(Primary Key)约束和唯一性(UNIQUE)约束的区别
2013/05/29 面试题
自荐信怎么写呢?
2013/12/09 职场文书
股东协议书
2014/04/14 职场文书
酒店人事专员岗位职责
2015/04/07 职场文书
2015年房地产个人工作总结
2015/05/26 职场文书
运动会宣传稿50字
2015/07/23 职场文书
Java无向树分析 实现最小高度树
2022/04/09 Javascript
Three.js实现雪糕地球的使用示例详解
2022/07/07 Javascript