列中的交换数字

时间:2015-08-31 14:04:13

标签: mysql

是否可以在表格的列内交换数字? 数字总是相同的长度,即8.这里有一个例子:

^ before ^ after ^
|20150620|06202015|

这是一个日期格式,我希望在年底和月初交换年份。

只能在MySQL上使用吗?

先谢谢

2 个答案:

答案 0 :(得分:1)

是的,你可以结合使用CONCAT,右和左:

SELECT CONCAT(RIGHT(column, 4), LEFT(column,4)) as flipped from table

当然,您也可以在UPDATE语句中使用它,如:

UPDATE table set column = CONCAT(RIGHT(column, 4), LEFT(column,4))

DEMO

答案 1 :(得分:1)

是的,你可以。考虑到列为string/varchar类型,您可以使用LEFT/RIGHT之类的字符串函数来完成此操作

UPDATE your_table 
SET your_string_type_date_column = RIGHT(your_string_type_date_column, 4) + LEFT(your_string_type_date_column, 4)