运维面试,遇到的SQL笔试题

简介: 运维面试,遇到的SQL笔试题

今天突然一个朋友给我突然给我发了一份建立,他选择还是在职状态,但是没事的时候他就喜欢投投简历,来更了解现在的工资行情,他是一个智能AI运维工程师,周日的时候呢,他接到了一家小企业的面试要求,还是线下,到了之后人事简单问了一些工作方面的问题,然后就给他丢过来了一张关于SQL的题,但是这个题我第一眼一看好简单啊,可以在我做的时候确不如此,废话少说,我们来帮他做一下吧。


       查询SQL的方法有很多,大家可以来做一下,如果有更高效的方法欢迎大家评论,如果发现哪里我有写的不对的地方也欢迎大家来纠正

创建原表:

create table user(id int primary key,name varchar(10),age int,sex char(1));
create table salary(userid int, salary int, month int, year int);
alter table salary add foreign key(userid) references user(id);
insert into user values(1,'zhangsan',27,'n'),(2,'lisi',28,'n'),(3,'wuwang',29,'v');
insert into salary values(1,1000,1,2004),(1,1000,2,2004),(1,2000,3,2004),(2,2000,1,2004),(2,2000,2,2004),(2,2000,3,2004),(3,2000,1,2004),(3,2000,2,2004),(3,2000,3,2004);

1,求2004年一月份工资最低的员工姓名

mysql> select * from user u join salary s on u.id=s.userid and salary = (select min(salary) from salary where year=2004 and month=1) and year=2004 and month=1;
+----+----------+------+------+--------+--------+-------+------+
| id | name     | age  | sex  | userid | salary | month | year |
+----+----------+------+------+--------+--------+-------+------+
|  1 | zhangsan |   27 | n    |      1 |   1000 |     1 | 2004 |
+----+----------+------+------+--------+--------+-------+------+
1 row in set (0.00 sec)

2,删除User表中Sex为女的用户,在 Salary 表中的所有信息

delete from salary where userid=(select id from user where sex='v');

3,求Sex 等于男的用户,2004 年第一季度的平均工资

mysql> select u.sex,avg(s.salary) from user u inner join salary s on u.id=s.userid and  sex='n' and year=2004 and month between 1 and 3 group by u.sex;
+------+---------------+
| sex  | avg(s.salary) |
+------+---------------+
| n    |     1666.6667 |
+------+---------------+
1 row in set (0.00 sec)

4,求Sex 等于男并且2004年3 月份有涨工资的用户

mysql> select a.name from (select u.name,s.salary from salary s join user u on u.id=s.userid and u.sex
='n' and month=2) a,(select u.name,s.salary from salary s join user u on u.id=s.userid and u.sex='n' a
nd month=3) b where a.name=b.name and b.salary>a.salary;
+----------+
| name     |
+----------+
| zhangsan |
+----------+
1 row in set (0.00 sec)


目录
相关文章
|
2月前
|
存储 运维 关系型数据库
2024年最全ceph的功能组件和架构概述(2),Linux运维工程面试问题
2024年最全ceph的功能组件和架构概述(2),Linux运维工程面试问题
2024年最全ceph的功能组件和架构概述(2),Linux运维工程面试问题
|
1月前
|
SQL 大数据
常见大数据面试SQL-每年总成绩都有所提升的学生
一张学生成绩表(student_scores),有year-学年,subject-课程,student-学生,score-分数这四个字段,请完成如下问题: 问题1:每年每门学科排名第一的学生 问题2:每年总成绩都有所提升的学生
|
1月前
|
SQL 关系型数据库 MySQL
sql面试题库
sql面试题库
|
17天前
|
SQL Java 关系型数据库
Java面试题:描述JDBC的工作原理,包括连接数据库、执行SQL语句等步骤。
Java面试题:描述JDBC的工作原理,包括连接数据库、执行SQL语句等步骤。
27 0
|
17天前
|
SQL 监控 Java
Java面试题:简述数据库性能优化的常见手段,如索引优化、SQL语句优化等。
Java面试题:简述数据库性能优化的常见手段,如索引优化、SQL语句优化等。
26 0
|
2月前
|
运维 Linux 程序员
最全树莓派4B安装64位Linux(不用显示器键盘鼠标),Linux运维面试送分题
最全树莓派4B安装64位Linux(不用显示器键盘鼠标),Linux运维面试送分题
最全树莓派4B安装64位Linux(不用显示器键盘鼠标),Linux运维面试送分题
|
1月前
|
运维 数据库 网络架构
详尽分享运维网络面试题101道
详尽分享运维网络面试题101道
52 0
|
2月前
|
运维 关系型数据库 MySQL
【运维面试100问】(三)说说你在故障排除方面的经历_运维面试故障排查类面经
【运维面试100问】(三)说说你在故障排除方面的经历_运维面试故障排查类面经
【运维面试100问】(三)说说你在故障排除方面的经历_运维面试故障排查类面经
|
2月前
|
运维 监控 Linux
【运维面试100问】(三)说说你在故障排除方面的经历_运维面试故障排查类面经(1)
【运维面试100问】(三)说说你在故障排除方面的经历_运维面试故障排查类面经(1)
【运维面试100问】(三)说说你在故障排除方面的经历_运维面试故障排查类面经(1)
|
2月前
|
运维 Linux Docker
【运维面试100问】(一)打包了一个镜像推送上去harbor,推不上是什么原因
【运维面试100问】(一)打包了一个镜像推送上去harbor,推不上是什么原因
【运维面试100问】(一)打包了一个镜像推送上去harbor,推不上是什么原因