所以我有一个这样的表“记录”:
name month year
Rafael 9 2018
Rafael 5 2018
Rafael 10 2017
我想获得我的最新记录(Rafael,2018年9月)。我考虑过对月份和年份进行求和,并得到如下最大值:
select * from records, max(month + year) as max_date
但似乎不对。感谢您的帮助
答案 0 :(得分:2)
您是说跟随者的输出吗?
select *
from records
order by year desc, month desc
limit 1
通常,为此使用一种DATE或DATETIME列类型会更有用,如果需要,您可以在其中提取年份和月份。
答案 1 :(得分:2)
使用ORDER BY子句,可以获得最高的年份和月份组合。请尝试以下操作:
SELECT *
FROM records
ORDER BY year DESC, month DESC
LIMIT 1
答案 2 :(得分:0)
如果要设置最大月份和最大年份,请使用concat
Select name ,concat (concat( max(month), '-'),max(year)) from records
Group by name
但是,如果您只想获取年度最大年份日期信息,请在下面使用
Select * from records
order by year desc
limit 1
https://www.db-fiddle.com/f/sqQz1WEEAukoWEWkbxBYxe/0
name month year
Rafael 9 2018