无论如何,我可以交换sql中的年和日值吗?

时间:2018-08-09 14:06:12

标签: mysql database

我试图加载数据,但以某种方式将日期类型为date的列交换了year至day和day to year的值。我有什么办法可以交换它们?

输出

+------------+
| deadline   |
+------------+
| 2029-05-14 |
| 2019-01-18 |
| 2016-02-01 |
| 2023-10-14 |
| 2025-03-16 |
 +------------+

我还以dd-mm-yy格式加载了数据。

2 个答案:

答案 0 :(得分:0)

使用SUBSTR函数,从deadline字段中获取月份和日期部分,然后使用CONCAT函数以不同的顺序再次将它们重新加入。

UPDATE Table 
SET deadline = CONCAT(SUBSTR(deadline, 1, 5), 
                      SUBSTR(deadline, 9, 2), 
                      '-', 
                      SUBSTR(deadline, 6, 2) 
                     )
WHERE 1 = 1

答案 1 :(得分:0)

您可以使用date_format以任意方式显示日期。例如:

SELECT DATE_FORMAT(deadline, '%d-%m-%Y')
FROM   mytable