mysql多表查询

内连接

sql 复制代码
mysql> select t1.name,t1.age,t2.name from emp t1,department t2 where t1.depid=t2.id;--隐式
mysql> select * from emp inner join department on emp.depid=department.id;--显式

外连接

sql 复制代码
mysql> select * from emp left join department on emp.depid=department.id;--左外连接
mysql> select * from emp right join department on emp.depid=department.id;--右外连接

子查询

1、子查询返回结果为单行单列

sql 复制代码
mysql> select * from emp where age=(select max(age) from emp);--查询年龄最大的员工信息,子查询结果为单行单列的,可以作为条件判断
mysql> select * from emp where age <(select avg(age) from emp);--查询年龄小于平均年龄的员工信息

2、子查询结果为多行单列

sql 复制代码
mysql> select * from emp where depid in (select id from department where name in ('研发部','销售部'));

3、子查询返回结果为多行多列,结果可以作为一个虚拟表,作为一个表查询

sql 复制代码
mysql> select * from department t1,(select * from emp where age > 30) t2 where t1.id=t2.depid;
相关推荐
ruleslol4 小时前
MySQL的段、区、页、行 详解
数据库·mysql
天若有情6734 小时前
校园二手交易系统实战开发全记录(vue+SpringBoot+MySQL)
vue.js·spring boot·mysql
それども4 小时前
MySQL affectedRows 计算逻辑
数据库·mysql
是小章啊4 小时前
MySQL 之SQL 执行规则及索引详解
数据库·sql·mysql
小小bugbug8 小时前
mysql查询的原始返回顺序与limit分页优化
mysql·adb
摇滚侠9 小时前
MySQL 中 utf8mb4 字符集,字母a占几个字节,一个汉字占几个字节 / MySQL 中 utf8mb3 字符集,字母a占几个字节,一个汉字占几个字节
数据库·mysql
Antoine-zxt9 小时前
MySQL CPU飙升至500%的深度排查与优化实践
数据库·mysql
Awkwardx9 小时前
MySQL数据库—MySQL基本查询
数据库·mysql
让你三行代码QAQ9 小时前
MySQL全方位优化方案
mysql
大爱编程♡11 小时前
Spring IoC&DI
数据库·mysql·spring