Как сложить время в Mysql

SELECT DATE_ADD(Date, INTERVAL 4 Hour) AS End FROM Log WHERE Id= 3 - это только делает выбор, но как его записать в другой столбец,бд и есть какая либо автоматизация этого процесса чтобы после добавления оно само складывалось? Таблица создана только для теста.


Ответы (1 шт):

Автор решения: Alexey R.

Допустим у нас есть таблица Table1

+-------+-------+--------+
| date1 | time1 | result |
+-------+-------+--------+
|       |       |        |

Тогда запрос будет таким:

update Table1 set result = addtime(date1, time1);
  • date1 - колонка типа datetime
  • time1 - колонка типа time
  • result - колонка типа datetime

UPD: Триггер, считающий и вставляющий значение при инсерте новой записи

CREATE TRIGGER insert_time 
BEFORE INSERT ON Table1
  FOR EACH ROW
    SET NEW.result = addtime(NEW.date1, NEW.time1)
→ Ссылка