0

我在我的专栏中有像“22018”这样的月份值我在mysql工作台中需要像2018年2月这样的月份值

4

1 回答 1

0

您需要首先从日期中提取月份(考虑到它将有一位或两位数字),例如:

SELECT LPAD(SUBSTRING('22018', 1, LENGTH('22018') - 4), 2, '0');

这会给你02。现在,您可以使用类似的逻辑提取年份,例如:

SELECT SUBSTRING('22018', LENGTH('22018') - 4 + 1, LENGTH('22018'));

最后,您可以连接所有这些以获得如下字符串2018-02-01

SELECT CONCAT(SUBSTRING('22018', LENGTH('22018') - 4 + 1, LENGTH('22018')),
'-',
LPAD(SUBSTRING('22018', 1, LENGTH('22018') - 4), 2, '0'), '-01');

完成后,您可以使用DATE_FORMAT函数来获取所需的输出:

SELECT DATE_FORMAT(CONCAT(SUBSTRING('22018', LENGTH('22018') - 4 + 1, 
LENGTH('22018')),
'-',
LPAD(SUBSTRING('22018', 1, LENGTH('22018') - 4), 2, '0'), '-01'), '%M-%Y');
于 2019-02-21T09:02:43.430 回答