gpt4 book ai didi

MySQL 从 mm/dd/YY h :i:s A to YY-mm-dd H-i-s 更新

转载 作者:行者123 更新时间:2023-11-29 08:25:42 26 4
gpt4 key购买 nike

我最近将字段的数据类型从 varchar 更改为 datetime,但在此之前,我首先复制了它,因为内容将重置为此值 000-00-00 00-00-00

现在,我正在尝试更新表的日期时间字段。

这就是我所做的

UPDATE table
INNER JOIN copyOfTable ON (table.logID = copyOfTable.logID)
SET table.date = DATE(STR_TO_DATE(copyOfTable.date, '%m/%d/%Y'))

结果是这样的

YYYY-mm-dd 00-00-00
2013-08-02 00-00-00

我也尝试过

SET table.date =  DATE(STR_TO_DATE(copyOfTable.date, '%m/%d/%Y %h:%i:%s'))

结果保持不变。

我想要的是也复制时间 (hh:ii:ss)

so that the total format of time is (YY-mm-dd hh-ii-ss)

表“copyOfTable”中的时间格式为 (mm/dd/yy h:i:s A)

这家伙该怎么做?

最佳答案

恕我直言

  1. 如果您需要保留日期时间值的时间部分,请勿将 STR_TO_DATE() 包装到 DATE()
  2. 您的格式字符串应为'%m/%d/%y %h:%i:%s %p'

按照你的说法

The format of time from table 'copyOfTable' is (mm/dd/yy h:i:s A)

所以,如果我理解正确,您在 copyOfTable 中的值看起来像 08/01/13 04:08:12 AM

这是一个例子

SELECT STR_TO_DATE('08/01/13 04:08:12 AM', '%m/%d/%y %h:%i:%s %p') new_date

输出:

|                      NEW_DATE |---------------------------------| August, 01 2013 04:08:12+0000 |

这里是SQLFiddle 演示

关于MySQL 从 mm/dd/YY h :i:s A to YY-mm-dd H-i-s 更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18011763/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com