題目描述
查詢入職員工時間排名倒數第三的員工所有資訊
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`));
輸入描述:
無輸出描述:
emp_no
birth_date
first_name
last_name
gender
hire_date
10005
1955-01-21
kyoichi
maliniak
m1989-09-12
思路:將員工的入職時間按照從晚到早,即從大到小的順序排序,去除時間重複的(使用distinct),得到無重複的入職時間資料,然後從中選出倒數第三個,最後查詢這個時間對應的員工的所有資訊。
select * from employees
where hire_date =
(select distinct hire_date from employees order by hire_date desc limit 2, 1);
查詢入職員工時間排名倒數第三的員工所有資訊
查詢入職員工時間排名倒數第三的員工所有資訊,為了減輕入門難度,目前所有的資料裡員工入職的日期都不是同一天 1.先把入職時間按照從小到大的排序 select hire date from employees2 order by hire date desc 2.在通過limit拿到倒數第三的入職時間 ...
查詢入職員工時間排名倒數第三的員工所有資訊
limit m,n 表示從第m 1條開始,取n條資料 limit n 表示從第0條開始,取n條資料,是limit 0,n 的縮寫。1 首先需要加distinct去重。假設 5 23 入職最晚日期 入職的有a,b,c 3人 5 22 入職第二晚日期 入職的有d,e 2人 5 21 入職倒數第三晚 入職...
2 查詢入職員工時間排名倒數第三的員工所有資訊
select from employees order by hire date desc limit2,1 指定日期按照倒敘排列然後取第三個 select from employees where hire date select distinct hire date from employees...