(大家好。我特别喜欢SQL和MySQL。我知道一些PHP。)
我有一个包含“ date_string”列的表。出于传统原因,这是一个文本字段,其中包含d / m / YY格式的日期。例如2009年11月22日为“ 22/11/09”。
问题:如何将此列中的所有字段都转换为标准的MySQL日期格式(YYYY-mm-dd),就地?
或者,由于列类型是文本,因此无法将其更改到位,我该如何获取每个现有的基于文本的日期,并在表中的另一列(类型为“日期”)中创建标准日期?
谢谢你的帮助。
您可能想使用该STR_TO_DATE()功能。
STR_TO_DATE()
SELECT STR_TO_DATE(textdate, '%d/%m/%y') FROM MyTable...
或创建具有DATE数据类型的另一列并复制值:
DATE
ALTER TABLE MyTable ADD COLUMN realdate DATE; UPDATE MyTable SET realdate = STR_TO_DATE(textdate, '%d/%m/%y');