如何让最年长的人?

时间:2016-06-28 13:02:11

标签: sql postgresql group-by max

我想使用group by或任何聚合函数,而不是:

select birthday
from table
where birthday in ( select min(birthday) from table)

3 个答案:

答案 0 :(得分:2)

我猜你只对生日感兴趣,而且对其他colums感兴趣(否则select min(birthday) from table会起作用)

select *
from table
order by birthday
limit 1;

应该这样做

答案 1 :(得分:0)

要获取生日日期较短的所有记录,您可以尝试以下代码:

select *
from table
having birthday = min(birthday)

答案 2 :(得分:0)

如果2.5年后有人来这里-如果您只需要一个人,vc 74的答案就是一个不错的选择。如果您需要所有年龄最大的人,请尝试以下方法:

SELECT
    *
FROM 
    table
WHERE 
    birthday = (SELECT max(birthday) FROM table);

或(使用vc 74的答案):

SELECT
    *
FROM 
    table
WHERE 
    birthday = (SELECT birthday FROM table ORDER BY birthday DESC LIMIT 1);