MySQL 子查询
2021/9/1 19:06:32
本文主要是介绍MySQL 子查询,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
子查询(嵌套查询)
1. 理解 一个查询语句中内嵌另一个完整的查询语句,被嵌套的语句 称为子查询 或者内查询 外面的语句称为主查询 或者外查询 2. 语法 select (子查询) from (子查询) where (子查询) 3. 特点 1. 子查询 必须写在小括号中 2. 子查询 优先执行 ,主查询需要用到子查询的结果 3. 子查询结果 单行子查询:结果只有一个 搭配的符号 = > < >= <= <> 多行子查询:结果多个 搭配的符号 in / not in / any(任一) / all (所有)
#案例1:查询薪资比'De Haan'的薪资高的员工信息 #step1: De Haan 的薪资 select * from employees where last_name = 'De Haan'; #step2: 找到薪资比DeHaan薪资还要高的员工信息 #select * from employees where salary > 17000; select * from employees where salary > (select salary from employees where last_name = 'De Haan'); #案例2:查询location_id 是1400 或者 1700的部门中所有的员工的信息 select * from employees where department_id in (select department_id from departments where location_id = 1400 or location_id = 1700); #案例3:查询其他工种中比工种为'IT_PROG'中的 所有员工薪资都低的员工薪资、名字 select * from employees where salary < (select min(salary) from employees where job_id = 'it_prog') select * from employees where salary < (select salary from employees where job_id = 'it_prog' order by salary limit 1 ) select * from employees where salary < all (select salary from employees where job_id = 'it_prog')
查询的规则: 1. 单表能实现 不用多表 2. 多表能实现 不用子查询 子查询效率比较低。
这篇关于MySQL 子查询的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-15MySQL教程:初学者必备的MySQL数据库入门指南
- 2024-11-15MySQL教程:初学者必看的MySQL入门指南
- 2024-11-04部署MySQL集群项目实战:新手入门教程
- 2024-11-04如何部署MySQL集群资料:新手入门指南
- 2024-11-02MySQL集群项目实战:新手入门指南
- 2024-11-02初学者指南:部署MySQL集群资料
- 2024-11-01部署MySQL集群教程:新手入门指南
- 2024-11-01如何部署MySQL集群:新手入门教程
- 2024-11-01部署MySQL集群学习:新手入门教程
- 2024-11-01部署MySQL集群入门:新手必读指南