Member 12934766 Ответов: 3

Я пытаюсь преобразовать поле datetime


Используя MySQL, я пытаюсь завершить обновление поля под названием "del_date". Этот файл отформатирован для типа даты. Поле, которое я пытаюсь извлечь дату и обновить поле "del_date", называется"del_date_time_web". Это поле варчара. Пример: 19.12.2016 4: 25 вечера из поля" del_date_time_web "в поле" del_date " 2016-12-19. Я хотел бы извлечь дату и время из этого поля и вставить их в форматированные поля даты и времени самостоятельно.
Любая помощь в этом была бы просто великолепна!

Что я уже пробовал:

Обновление q_v8_ups_gsr_void_processor p
Множество P.del_date = DATE_FORMAT(STR_TO_DATE(стр. del_date_time_web,'%м,%д/,%г'),'%г,%м,%д')

3 Ответов

Рейтинг:
2

Wendelius

Вы можете использовать дата[^] и время[^] функции для извлечения нужной части. Например

DATE(STR_TO_DATE(p.del_date_time_web,'%m/,%d/,%Y'))
или
TIME(STR_TO_DATE(p.del_date_time_web,'%m/,%d/,%Y'))


Рейтинг:
1

Maciej Los

ФОРМАТ ДАТЫ[^] функция является избыточной, потому что возвращает string. И вам нужно вернуть дату, чтобы иметь возможность обновить поле даты! Вывод: вы должны использовать только STR_TO_DATE[^] функция.

Замените свою команду на:

UPDATE q_v8_ups_gsr_void_processor p
SET p.del_date = STR_TO_DATE(p.del_date_time_web,'%m/,%d/,%Y')

и все должно быть в порядке.

Удачи!


Рейтинг:
0

Rashmikants Monpara

пользователь ниже метода

convert(varchar,yourdate,103)


а также проверьте ссылку ниже для различных выходных данных
Функция SQL Server CONVERT() [^]