所以我有 2 列年份和月份,我想将月份和年份显示在新列中并显示该月的最后日期
示例: 年份列 = 2019、2020、2021 月份列 = 一月、二月、三月
我想要结果:31-01-2019、29-02-2019等
答案 0 :(得分:2)
首先连接年、月和 '01'
以创建字符串日期,如:'2019-Jan-01'
。
然后使用 STR_TO_DATE()
将其转换为有效日期,最后使用 LAST_DAY()
获取该年/月的最后一天:
SELECT LAST_DAY(STR_TO_DATE(CONCAT(year, '-', month, '-01'), '%Y-%b-%d')) date
FROM tablename
参见demo。