mysql 带多个条件的查询

环境:mysql 5.7

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

mysql 多对多条件查询

两个表 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;

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

SELECT C FROM sc WHERE S='01'

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

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

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

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

更多相关文章

  1. python list.sort()根据多个关键字排序的方法实现
  2. android 当系统存在多个Launcher时,如何设置开机自动进入默认的La
  3. 【android】监听网络变化连续多个广播的问题解决
  4. android sqlite 一次创建多个表
  5. android同一个程序中使用多个地图出现混乱怎么办?!
  6. Android中如何取得联系人,如何得到一个联系人下面的多个号码
  7. Android(安卓)Preference的使用总结(很全很详细)以及SharedPrefere
  8. Android(安卓)15本经典教程和150多个实例源码
  9. Android(安卓)多个Fragment切换动画

随机推荐

  1. golang判断错误类型的方法
  2. golang使用什么数据库?
  3. golang怎么自定义错误
  4. golang 如何部署到服务器?
  5. golang解决中文乱码的方法
  6. go语言中的排序讲解
  7. golang怎么给slice赋长度
  8. Go语言异常处理的方法介绍
  9. golang怎么拼接字符串数组
  10. golang使用protobuf的方法详解