MySQL查询计算出最老员工的经理

时间:2017-02-17 09:50:47

标签: mysql

我正在使用phpMyAdmin中的数据库。

我正在寻找一个能够生成最老员工经理的查询。

我将为此链接不同的数据库。

第一个数据库名为person,其中包含以下字段:

[firstname]
[surname]
[DOB]

第二个数据库名为manager_allocation,我想使用以下字段:

[person_id]
[line_manager_id]

2 个答案:

答案 0 :(得分:0)

要从表person中获取最老的员工,您可以使用如下查询:

select personid, firstname, surname, DOB
from person
order by DOB desc
limit 1

如果你想考虑不止一个人拥有相同的DOB,那么查询将是这样的:

select personid, firstname, surname, DOB
from person
where DOB = (select min(dob) from person)

要返回经理(或管理员,如果多人共享最大年龄),您可以使用如下查询:

select line_manager_id
from manager_allocation
where
  person_id IN (
    select personid from person
    where DOB = (select min(dob) from person)
  )

答案 1 :(得分:0)

您可以使用最小或最大功能来获取最早或最新的日期。

select line_manager_id from person inner join manager_allocation on person.person_id=manager_allocation.person_id where DOB=(select min(DOB) from person)