Как изменить тип с varchar на дату без потери данных в Xamp - PullRequest
0 голосов
/ 25 октября 2018

У меня есть база данных sql, в которой есть дата поля, а ее тип - varchar, я хочу преобразовать ее в дату, но у меня много записей в этом поле.Пожалуйста, сообщите мне, как я могу преобразовать его в тип даты без потери данных.Это выглядит так: 20-10-2018 Но я хочу изменить тип столбца даты varchar на Дата.Спасибо.

1 Ответ

0 голосов
/ 25 октября 2018

Сначала необходимо преобразовать строку даты (varchar) в Формат даты MySQL ( ГГГГ-ММ-ДД ).Для этого мы можем использовать функцию STR_TO_DATE () .

Ваша строка даты выборки ( 20-10-2018 ) в основном в дд-мм-гггг формат.Можно использовать следующие спецификаторы формата:

  • %d День месяца в виде числового значения (от 01 до 31)
  • %m Название месяца в виде числового значения (от 00 до12)
  • %Y Год в виде числового 4-значного значения

Запрос на обновление даты будет выглядеть следующим образом ( DB Fiddle DEMO ):

UPDATE your_table_name 
SET date_column_name = STR_TO_DATE(date_column_name, '%d-%m-%Y');

Теперь вы можете использовать Alter Table, чтобы изменить тип данных с varchar на date.

ALTER TABLE your_table_name 
MODIFY COLUMN date_column_name date;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...