找到最年轻的学生

时间:2017-04-21 14:30:14

标签: sql sql-server sql-server-2012

我有下表:

name      id     DOB                        marks
rk         2     2006-02-03 00:00:00.000    30
mk         3     2006-07-07 00:00:00.000    30
pk         4     2006-04-09 00:00:00.000    30
sk         5     2006-05-03 00:00:00.000    30
fk         6     2006-08-09 00:00:00.000    30
nk         7     2007-08-06 00:00:00.000    30

我怎样才能找到最年轻的学生?

3 个答案:

答案 0 :(得分:5)

您可以按出生日期降序排序,然后仅过滤第一个结果,这可以在SQL Server中完成

select  top 1 *
from    yourTable
order by DOB desc

答案 1 :(得分:3)

看起来你只需要最新的出生日期(假设DOB是出生日期):

select max(dob) from yourtable

然后你的查询将是:

select name as youngestStudent, dob as dateOfBirth
from yourtable
where dob = (select max(dob) from yourtable)

答案 2 :(得分:0)

这很简单。根据您提供的数据,“nk”是最年轻的学生,因此您可以使用以下查询:

    select * from yourtable
    where dob = (select max(dob) from yourtable)