小知识,大挑战!本文正在参与“ 程序员必备小知识 ”创作活动
我是老表,Python终身学习者,数据分析爱好者,宠猫狂人~
本文是sql刷题从0到100系列的第一篇,坚持分享自己的学习刷题笔记,不断积累,相信终有一天变成大佬~
SQL1 查找最晚入职员工的所有信息
我的思路: 根据hire_date(员工入职日期)进行降序排序,然后排第一位的就是
最晚入职的员工。
我的题解:
select *
from employees
order by hire_date desc
limit 1;
涉及知识点:
- 排序:order by 字段名称 desc/asc (desc 降序,asc 升序)
- 取出指定列:limit n
提交结果:
其他题解学习:
这个比最开始解法好,如果有多个员工都是最晚入职的,这样也可以筛选出来。
思路:先取出employees表中hire_date的最大值,然后再从employees表中选取出所有hire_date等于最大值的行。
select *
from employees
where hire_date = (
select max(hire_date)
from employees
);
另外还有几个新增知识点:
- max函数,取出最大值,参数为列名(字段名字)
- 使用limit与offset关键字,返回n行数据,从第m+1行开始返回:limit n offset m
- 使用limit关键字 从第m+1条记录开始,返回n行数据,也就是第一条记录 limit m,n,如果m=0,就等于limit n
题解:@老表