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;
相关推荐
赵渝强老师1 天前
【赵渝强老师】MySQL集群解决方案
数据库·mysql
李慕婉学姐1 天前
【开题答辩过程】以《Javaweb的火花流浪动物救助系统设计与实现》为例,不会开题答辩的可以进来看看
vue.js·spring boot·mysql
百***62851 天前
MySQL 常用 SQL 语句大全
数据库·sql·mysql
百***6971 天前
MySQL数据库(SQL分类)
数据库·sql·mysql
百***41661 天前
Java MySQL 连接
java·mysql·adb
百***46801 天前
MySQL的底层原理与架构
数据库·mysql·架构
暂时先用这个名字1 天前
信创时代下,PHP/MySQL应用的平滑迁移与运维管理升级(AI整理)
运维·mysql·php·信创·国产化·国产·迁移
一氧化二氢.h1 天前
MySQL root用户连接错误解决方法
android·数据库·mysql
百***22121 天前
mysql 迁移达梦数据库出现的 sql 语法问题 以及迁移方案
数据库·sql·mysql
_Jimmy_1 天前
ShardingSphere-JDBC 实现两个mysql数据库的不同表的关联查询
数据库·mysql