0

长话短说,我的一个客户想将日期时间字段更改为 varchar 字段,在告诉他们为什么不应该这样做几个小时后,我终于让步了。

我的问题是现在转换为 VARCHAR 的日期是yyyy-mm-dd,我需要将它们翻转成mm-dd-yyyy我可以用 PHP 用foreach()循环和 alist()=explode()来做到这一点,但是有没有办法用 sql 查询来做到这一点?

4

3 回答 3

2

您可以使用DATE_FORMAT

UPDATE your_table SET your_varchar = DATE_FORMAT(your_varchar ,'%m-%d-%Y')

有关更多信息,请参阅 MySQL 文档:DATE_FORMAT

于 2013-03-22T16:19:09.890 回答
0
SELECT 
    SUBSTRING(date_to_change,9,2) + '-' + SUBSTRING(date_to_change,6,2) + '-' + SUBSTRING(date_to_change,1,4)
...

看看那是不是你要找的。

道歉 - 忘记添加它的其余部分。

UPDATE 
    table_to_update 
SET 
    date_to_change = SUBSTRING(date_to_change,9,2) + '-' + SUBSTRING(date_to_change,6,2) + '-' + SUBSTRING(date_to_change,1,4)
于 2013-03-22T16:19:07.207 回答
0

你可以使用这个:

SELECT CAST(DATE_FORMAT(dateColumn, '%m-%d-%Y') AS CHAR(10));
于 2013-03-22T16:19:14.423 回答