SQL max附加列

时间:2017-12-19 12:07:07

标签: mysql sql

我想使用MAX从MySQL表中选择最新记录。我正确选择了应用MAX的日期列,但不是第二列ID。屏幕截图最后进行了展示:enter image description here

如您所见,选择1_2018而不是15_2018。

3 个答案:

答案 0 :(得分:1)

您可以将查询用作子查询,以选择最大创建值

的行
select *
from business_trip
where created = (
    select max(created )
    from business_trip
    where year_id LIKE '%_2018'
)

答案 1 :(得分:1)

SELECT created, year_id
FROM business_trip 
WHERE created = (SELECT MAX(created) FROM business_trip);

在这种情况下,我在这里使用子查询来满足您的要求。使用ORDER BY的其他答案(在year_id为MAX之前不会给出预期的答案)和MAX()SELECT的其他答案不会使用最新created值来提取相关记录。 在我的查询中,我也避免使用year_id检查,因此这将始终返回最新created值的记录。

答案 2 :(得分:-1)

您可以按created然后LIMIT 1排序,只获得一条记录。像这样的东西

SELECT created,year_id
FROM business_trip 
WHERE year_id LIKE '%_2018'
ORDER BY created DESC LIMIT 1;