牛客網 資料庫SQL實戰18

2021-10-17 18:20:23 字數 1397 閱讀 2011

查詢當前薪水(to_date=『9999-01-01』)排名第二多的員工編號emp_no、薪水salary、last_name以及first_name,你可以不使用order by完成嗎

create

table

`employees`

(`emp_no`

int(11)

notnull

,`birth_date`

date

notnull

,`first_name`

varchar(14

)not

null

,`last_name`

varchar(16

)not

null

,`gender`

char(1

)not

null

,`hire_date`

date

notnull

,primary

key(

`emp_no`))

;

create

table

`salaries`

(`emp_no`

int(11)

notnull

,`salary`

int(11)

notnull

,`from_date`

date

notnull

,`to_date`

date

notnull

,primary

key(

`emp_no`

,`from_date`))

;

輸入描述:

無輸出描述:

1.首先聯接兩個表,篩選出滿足題目要求,及salaries.to_date='9999-01-01』的表項

2.按照工資將篩選出的表項進行逆序排序

3.用 limit offset子句篩選出工資第二高的表項資訊輸出

select e.emp_no, s.salary, e.last_name, e.first_name

from employees as e inner

join salaries as s

on e.emp_no = s.emp_no

and s.to_date=

'9999-01-01'

order

by s.salary desc

limit1,

1;-- 可寫成 limit 1 offset 1

牛客網資料開發題庫 牛客網資料庫SQL實戰(1)

查詢最晚入職員工的所有資訊 入門 需要查詢最晚入職員工的資訊,即查詢hire date最大的資料,使用倒序並取第乙個人即可。select from employees order by hire date desc limit 0,1 desc 使用order by時在後面加上desc表示倒序,即從...

牛客網 資料庫SQL實戰36 40

36.對於如下表actor,其對應的資料為 actor id first name last name last update 1penelope guiness 2006 02 15 12 34 33 2nick wahlberg 2006 02 15 12 34 33 建立乙個actor nam...

牛客網 資料庫SQL實戰1

題目描述 查詢最晚入職員工的所有資訊,為了減輕入門難度,目前所有的資料裡員工入職的日期都不是同一天 sqlite裡面的注釋為 mysql為comment create table employees emp no int 11 notnull 員工編號 birth date date notnull...