2016-04-07 2 views
0

У меня есть столбец времени [start_at] в таблице обязанностей. Я хочу заполнить таблицу daily_chores столбцом current_date + time из таблицы операций.MySQL - создайте дату-время, используя current_date и определенное время

Пример: У меня есть номер 17, который должен начаться в 18:00:00. На сегодняшний день 2016-06-24, таблица daily_chores должна быть заполнена с заявлением, как это (но это не работает):

INSERT INTO DAILY_CHORES (actual_day, chore_number, chore_starts) 
SELECT CURRENT_DATE, c.chorekey, add_time(CURRENT_DATE,c.start_at) 
FROM CHORES c; 

Эта строка Шоуда создается (среди прочих):

actual_day chore_number chore_starts 
---------- ------------ ------------------- 
2016-06-24  17  2016-06-24 18:00:00 

Можно ли добавить фиксированное время к переменной date в инструкции sql, которая добавляет к дате времени?

ответ

1

Вместо

add_time(CURRENT_DATE,c.start_at) 

использования

str_to_date(concat(CURRENT_DATE, " ", c.start_at), "%Y-%m-%d %T") 

Пример:

str_to_date(concat("2016-06-24", " ", "18:00:00"), "%Y-%m-%d %T") 

возвращает объект DATETIME "24 июня 2016 18:00:00".

Смежные вопросы