搜索
写经验 领红包
 > 职场

mysql知识点梳理(mysql知识大全)

导语:从零开始mysql知识点归纳总结(五) 多行子查询

【1】需求: 谁的工资比Abel 高?

方式一: 第一步线查出Abel共子 第二步进行过滤

SELECT salary

FROM employees

WHERE last_name = &39;;

SELECT first_name,last_name,salary

FROM employees

WHERE salary>11000

方式二: 自连接

SELECT e2.last_name,e2.salary

FROM employees e1 JOIN employees e2

ON e1.last_name = &39; AND e2.salary>e1.salary

方式三: 子查询

写子查询时,建议从里向外写

单行子查询 : 查询的结果只有一条数据

多行子查询 : 查询的结果有多条数据

SELECT first_name,salary

FROM employees

WHERE salary>(

SELECT salary

FROM employees

WHERE last_name=&39; -- 单行子查询

)

SELECT first_name ,salary

FROM employees

WHERE (

SELECT salary

FROM employees

WHERE last_name =&39;

)<salary

【2】 需求:返回job_id 与141号 员工相同,salary比143好员工 多的 员工姓名,job_id 和工资

两个条件 : 1.与141号员工的job_id相同 2.salary比143号员工的要多

SELECT first_name,job_id,salary

FROM employees

WHERE job_id =(

SELECT job_id

FROM employees

WHERE employee_id=141

)

AND salary>(

SELECT salary

FROM employees

WHERE employee_id=141

)

【3】需求:返回公司工资最少的员工的last_name,job_id 和salary 求最低工资

过滤: 薪水和最低工资相同的哪个员工

SELECT last_name,job_id,salary

FROM employees

WHERE salary=(

SELECT MIN(salary)

FROM employees

)

【4】需求:查询最低工资大于50号 部门最低工资的部门id 和其最低工资

SELECT department_id,MIN(salary)

FROM employees

WHERE department_id IS NOT NULL

GROUP BY department_id

HAVING MIN(salary) > (

SELECT MIN(salary)

FROM employees

WHERE department_id = 50

)

in -- salary in (10,20,30) 只要等于其中的一个即可 (满足一个即可)

any -- salary > any (10,20,30) 只要大于其中的一个即可 (满足一个即可)

all -- salary > all (10,20,30) 必须大于所有的数据 (必须都得满足)

【5】需求 : 返回 其它部门 中比 job_id为‘IT_PROG’部门任意 工资低的员工的员工号、姓名、job_id 以及salary

SELECT employee_id,first_name,job_id,salary

FROM employees

WHERE salary<ANY(

SELECT salary

FROM employees

WHERE job_id=&39;

)AND job_id <>&39;

【6】需求:返回其它部门中比 job_id为‘IT_PROG’部门所有工资都低的 员工的员工号、姓名、job_id

SELECT employee_id,first_name,job_id,salary

FROM employees

WHERE salary < ALL(

SELECT salary

FROM employees

WHERE job_id=&39;

)AND job_id<>&39;

免责声明:本站部份内容由优秀作者和原创用户编辑投稿,本站仅提供存储服务,不拥有所有权,不承担法律责任。若涉嫌侵权/违法的,请反馈,一经查实立刻删除内容。本文内容由快快网络小楠创作整理编辑!