Day44 数据库的操作

Posted 萌哥

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Day44 数据库的操作相关的知识,希望对你有一定的参考价值。

视图操作:

 

 

 

 

 

 

1.左连接查询

 

select * from person left join dept on person.dept_id = dept.did

 

 2. 右连接

 

3. 内连接  inner join

 4. UNION ALL  全连接

 

 

 

 

 

 

 

 

 

 

=======================

一 、 多表操作

select * from person,dept

 

二 、多表联合操作 

 select * from person,dept where person.dept_id =dept.did   

 

 

 

 

select * from person,dept where person.dept_id =dept.did and person.salary >3000

 

 

三、多表连接查询

左连接查询 (以左表作为基准)

select *from person left JOIN dept  on person.dept_id = dept.did

 

 

内连接查询 

 select * from person inner JOIN dept where  person.dept_id =dept.did

 

 

4.全连接查询 full JOIN
select * from person LEFT JOIN dept ON person.dept_id = dept.did
UNION ALL
select * from person RIGHT JOIN dept on person.dept_id = dept.did;

 

二 、 复杂的多表查询  。 

 

1. 查询出 教学部 年龄大于20岁,并且工资小于40000的员工,按工资倒序排列.(要求:分别使用多表联合查询和内连接查询)

 

 select * from person inner join dept on person.dept_id = dept.did and dept.dname = \'教学部\' and person.age >20 and salary <40000 order by person.salary asc

 

 

2.查询每个部门中最高工资和最低工资是多少,显示部门名称

select dept.dname , MAX(salary),MIN(salary) from person LEFT JOIN dept on person.dept_id =dept.did group by person.dept_id

 

 

 2.求最大工资那个人的姓名和薪水

 

 1.求最大工资

select max(salary) from person;
2.求最大工资那个人叫什么
select name,salary from person where salary=53000;

合并
select name,salary from person where salary=(select max(salary) from person);

 3. 求工资高于所有人员平均工资的人


1.求平均工资
select avg(salary) from person;

2.工资大于平均工资的 人的姓名、工资
select name,salary from person where salary > 21298.625;

合并
select name,salary from person where salary >(select avg(salary) from person);

 

 


 

 








以上是关于Day44 数据库的操作的主要内容,如果未能解决你的问题,请参考以下文章

仅在父片段中的操作栏中显示搜索视图

重修课程day44(mysql八之索引查询二)

从 Android Studio 中的片段将数据写入 Firebase

刷新片段不再起作用?

如何使用 Swift 使用此代码片段为 iOS 应用程序初始化 SDK?

VSCode自定义代码片段——git命令操作一个完整流程