2014-09-04 22 views
1

我試圖將名爲A的列與"YYYY/MM/DD" varchar(已插入的數據)轉換爲"YYYY-MM-DD"日期。作爲一個例子,我需要1987/12/23(varchar列)數據結束1987-12-23(日期列),可能使用UPDATE和REPLACE。替換MySQL中的字符varchar

+2

你的意思是['REPLACE()'](http://dev.mysql.com/doc/refman/5.6/en/string- functions.html#function_replace)函數? – tadman 2014-09-04 19:51:24

回答

1

嘗試這樣:

UPDATE table 
    SET A = replace(A, '/', '-') 
    WHERE A LIKE '____/__/__'; 
+0

非常感謝,它的工作就像一個魅力!(PS。Multumesc,上午估計RO) – Blueleaf 2014-09-04 20:08:06

+0

如果現在列的數據像DD-MM-YYYY VARCHAR,我需要YYYY-MM --DD日期?再次感謝! – Blueleaf 2014-09-04 20:30:54

+0

你可以提出另一個問題,因爲其他人可能會感興趣。我會給你一個提示,然後讓你在UPDATE語句中進行轉換。 ('10 -23-1990',4),「 - 」,SUBSTRING('10 -23-1990',4,2),「 - 」,LEFT('10 -23-1990' ,2)) FROM DUAL' – 2014-09-04 20:49:48

1

正如tadman指出的那樣,您可以使用REPLACE功能。

UPDATE `table` SET `A`=REPLACE(`A`,'/','-')