牛客题霸-SQL篇——1~10题(1)

简介: + SQ1:查找最晚入职员工的所有信息描述有一个员工employees表简况如下:

+ SQ1:查找最晚入职员工的所有信息

描述

有一个员工employees表简况如下:

建表语句如下:

CREATE TABLE `employees` (
`emp_no` int(11) NOT NULL, 
`birth_date` date NOT NULL,
`first_name` varchar(14) NOT NULL,
`last_name` varchar(16) NOT NULL,
`gender` char(1) NOT NULL,
`hire_date` date NOT NULL,
PRIMARY KEY (`emp_no`));

请你查找employees里最晚入职员工的所有信息,以上例子输出如下:

       2021060720103442.png                        

示例代码

select *
from employees
order by hire_date desc
LIMIT 1


20210607201053339.png

注意事项:
该题不能使用 where + max/min来进行筛选!!

+ SQ2:查找入职员工时间排名倒数第三的员工所有信息

描述

有一个员工employees表简况如下:

20210607201207700.png

建表语句如下:

CREATE TABLE `employees` (
`emp_no` int(11) NOT NULL, 
`birth_date` date NOT NULL,
`first_name` varchar(14) NOT NULL,
`last_name` varchar(16) NOT NULL,
`gender` char(1) NOT NULL,
`hire_date` date NOT NULL,
PRIMARY KEY (`emp_no`));


请你查找employees里入职员工时间排名倒数第三的员工所有信息,以上例子输出如下:

示例代码

select *
from employees
order by hire_date desc
LIMIT 2,1


2021060720123773.png

+ SQ3:查找当前薪水详情以及部门编号dept_no

描述

有一个全部员工的薪水表salaries简况如下:

有一个各个部门的领导表dept_manager简况如下:

建表语句如下:

CREATE TABLE `salaries` (
`emp_no` int(11) NOT NULL,
`salary` int(11) NOT NULL,
`from_date` date NOT NULL,
`to_date` date NOT NULL,
PRIMARY KEY (`emp_no`,`from_date`));
CREATE TABLE `dept_manager` (
`dept_no` char(4) NOT NULL,
`emp_no` int(11) NOT NULL,
`to_date` date NOT NULL,
PRIMARY KEY (`emp_no`,`dept_no`));

请你查找各个部门当前领导的薪水详情以及其对应部门编号dept_no,输出结果以salaries.emp_no升序排序,并且请注意输出结果里面dept_no列是最后一列,以上例子输出如下:

示例代码

select s.emp_no,salary,from_date,s.to_date,dept_no
from salaries s,dept_manager d
where s.emp_no = d.emp_no
order by s.emp_no

202106072014228.png

+ SQ4:查找所有已经分配部门的员工的last_name和first_name以及dept_no

描述

有一个员工表,employees简况如下:

有一个部门表,dept_emp简况如下:

建表语句如下:

CREATE TABLE `employees` (
`emp_no` int(11) NOT NULL,
`birth_date` date NOT NULL,
`first_name` varchar(14) NOT NULL,
`last_name` varchar(16) NOT NULL,
`gender` char(1) NOT NULL,
`hire_date` date NOT NULL,
PRIMARY KEY (`emp_no`));
CREATE TABLE `dept_emp` (
`emp_no` int(11) NOT NULL,
`dept_no` char(4) NOT NULL,
`from_date` date NOT NULL,
`to_date` date NOT NULL,
PRIMARY KEY (`emp_no`,`dept_no`));


请你查找所有已经分配部门的员工的last_name和first_name以及dept_no,未分配的部门的员工不显示,以上例子如下:

示例代码

select last_name,first_name,dept_no
from employees e,dept_emp d
where e.emp_no = d.emp_no

20210607201554836.png

牛客题霸-SQL篇——1~10题(2)https://developer.aliyun.com/article/1415671?spm=a2c6h.13148508.setting.27.6e1a4f0eQzpjQW

目录
打赏
0
0
0
0
4
分享
相关文章
牛客题霸-SQL篇——10~20题(2)
+ SQ18:获取当前薪水第二多的员工的emp_no以及其对应的薪水salary 描述 有一个员工表employees简况如下:
96 0
牛客题霸-SQL篇——10~20题(1)
+ SQ11:获取所有员工当前的manager 描述 有一个员工表dept_emp简况如下:
75 0
|
8月前
|
SQL
牛客题霸-SQL篇——1~10题(3)
+ SQ10:获取所有非manager的员工emp_no 描述 有一个员工表employees简况如下:
68 0
|
8月前
|
SQL
牛客题霸-SQL篇——1~10题(2)
+ SQ5:查找所有员工的last_name和first_name以及对应部门编号dept_no 描述 有一个员工表,employees简况如下:
50 0
牛客题霸刷题-SQL必知必会50道
SQL每个人都要用,但是用来衡量产出的并不是SQL本身,你需要用这个工具,去创造其它的价值。
357 31
牛客题霸刷题-SQL必知必会50道
【SQL】牛客题霸SQL入门篇1(基础查询、条件查询、高级查询)
【SQL】牛客题霸SQL入门篇1(基础查询、条件查询、高级查询)
189 0
5-10Can't connect to MySQL server on 'sh-cynosl-grp-fcs50xoa.sql.tencentcdb.com' (110)")
5-10Can't connect to MySQL server on 'sh-cynosl-grp-fcs50xoa.sql.tencentcdb.com' (110)")
|
6月前
|
SQL Server的并行实施如何优化?
【7月更文挑战第23天】SQL Server的并行实施如何优化?
167 13
|
6月前
|
SQL
解锁 SQL Server 2022的时间序列数据功能
【7月更文挑战第14天】要解锁SQL Server 2022的时间序列数据功能,可使用`generate_series`函数生成整数序列,例如:`SELECT value FROM generate_series(1, 10)。此外,`date_bucket`函数能按指定间隔(如周)对日期时间值分组,这些工具结合窗口函数和其他时间日期函数,能高效处理和分析时间序列数据。更多信息请参考官方文档和技术资料。
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等