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--概念
Jun 18 MySQL
浅谈mysql增加索引不生效的几种情况
Jun 23 MySQL
mysq启动失败问题及场景分析
Jul 15 MySQL
MySQL面试题讲解之如何设置Hash索引
Nov 01 MySQL
一文带你探究MySQL中的NULL
Nov 11 MySQL
防止web项目中的SQL注入
Dec 06 MySQL
MySQL高级进阶sql语句总结大全
Mar 16 MySQL
Mysql事务索引知识汇总
Mar 17 MySQL
MySQL普通表如何转换成分区表
May 30 MySQL
MySQL中JOIN连接的基本用法实例
Jun 05 MySQL
MySQL事务的ACID特性以及并发问题方案
Jul 15 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
漫威DC即将合作联动,而双方早已经秘密开始
2020/04/09 欧美动漫
phpmyadmin里面导入sql语句格式的大量数据的方法
2010/06/05 PHP
基于Zend的Config机制的应用分析
2013/05/02 PHP
提交表单后 PHP获取提交内容的实现方法
2016/05/25 PHP
PHP面向对象之工作单元(实例讲解)
2017/06/26 PHP
前台js改变Session的值(用ajax实现)
2012/12/28 Javascript
javascript判断office版本示例
2014/04/11 Javascript
JS获取当前日期时间并定时刷新示例
2021/03/04 Javascript
Seajs 简易文档 提供简单、极致的模块化开发体验
2016/04/13 Javascript
jQuery实现的纵向下拉菜单实例详解【附demo源码下载】
2016/07/09 Javascript
js Canvas绘制圆形时钟效果
2017/02/17 Javascript
vue.js树形组件之删除双击增加分支实例代码
2017/02/28 Javascript
angular.js + require.js构建模块化单页面应用的方法步骤
2017/07/19 Javascript
Vue.js实现价格计算器功能
2020/03/30 Javascript
使用命令行工具npm新创建一个vue项目的方法
2017/12/27 Javascript
使用node搭建自动发图文微博机器人的方法
2019/03/22 Javascript
javascript中的相等操作符(==与===区别)
2019/12/21 Javascript
vue treeselect获取当前选中项的label实例
2020/08/31 Javascript
vue3.0 的 Composition API 的使用示例
2020/10/26 Javascript
python中List的sort方法指南
2014/09/01 Python
Python中将字典转换为XML以及相关的命名空间解析
2015/10/15 Python
python将.ppm格式图片转换成.jpg格式文件的方法
2018/10/27 Python
pyftplib中文乱码问题解决方案
2020/01/11 Python
在 Python 中使用 MQTT的方法
2020/08/18 Python
详解python with 上下文管理器
2020/09/02 Python
Python+OpenCV图像处理—— 色彩空间转换
2020/10/22 Python
把Anaconda中的环境导入到Pycharm里面的方法步骤
2020/10/30 Python
利用html5 canvas破解简单验证码及getImageData接口应用
2013/01/25 HTML / CSS
TripAdvisor西班牙官方网站:全球领先的旅游网站
2018/01/10 全球购物
公务员的自我鉴定
2013/10/26 职场文书
本科毕业生自荐信
2014/06/02 职场文书
实习班主任自我评价
2015/03/11 职场文书
淮海战役观后感
2015/06/11 职场文书
新郎父亲婚礼致辞
2015/07/27 职场文书
二十年同学聚会感言
2015/07/30 职场文书
小喇叭开始广播了! 四十多年前珍贵老照片
2022/05/09 无线电