子查询中的mysql最小值和最大值

时间:2018-06-17 20:40:14

标签: mysql

提前感谢您的帮助。我是一个使用sql的菜鸟,这可能是一个非常基本的问题,但我已经研究了几个小时,似乎无法弄清楚我做错了什么。

以下是提出的问题: 使用聚合函数,在名为Employee Name的字段中显示员工姓名(连接的名字和姓氏),以及雇用时间最长的员工和最后雇用的员工的雇用日期。

我试图以不同的方式编码无济于事。我总是得到一个结果,而不是我知道应该得到的两个结果。 (我知道我应该得到两个结果,因为我正在使用一个非常小的桌子并且可以通过查看它来计算答案 - 很容易确保我以这种方式获得正确的结果。)

这是我编码的一种方式: subquery

在这里,我使用了最小和最大的子查询。我使用了'和'因为我想要两个结果。我只得到一个。如果我使用'或',我得到的结果太多了 我也是这样试过的:

min/max in select statement 在这里,我仍然只获得一个员工姓名,但现在我得到两个日期。日期是正确的日期,但我需要输出看起来像第一个查询输出。

任何人都可以提供的帮助将不胜感激!

1 个答案:

答案 0 :(得分:0)

怎么样

select concat(first_name,' ',last_name), hire_date
from l_employees
where hire_date = (select max(hire_date) from l_employees)
or hire_date = (select min(hire_date) from l_employees)