(大家好.我特别是SQL和MySQL的新手.我知道一些PHP.)
我有一个包含"date_string"列的表.由于遗留原因,这是一个文本字段,包含d/m/YY格式的日期.例如2009年11月22日的"22/11/09".
问题:如何将此列中的所有字段转换为标准MySQL日期格式(YYYY-mm-dd),就地?
或者,如果列类型为文本,则无法就地更改它,如何获取每个现有的基于文本的日期,并在表中的另一列(类型为'date')中创建标准日期?
谢谢你的帮助.
Bil*_*win 15
您可能想要使用该STR_TO_DATE()功能.
SELECT STR_TO_DATE(textdate, '%d/%m/%y') FROM MyTable...
Run Code Online (Sandbox Code Playgroud)
或者使用DATE数据类型创建另一个列并复制值:
ALTER TABLE MyTable ADD COLUMN realdate DATE;
UPDATE MyTable SET realdate = STR_TO_DATE(textdate, '%d/%m/%y');
Run Code Online (Sandbox Code Playgroud)