В хранимой процедуре MySQL есть две переменные. В одной хранится в формате TimeStamp время регистрации,например '2020-01-15 14:30:33'. В другой переменной хранится интервал в формате DateTime, например 3 месяца '0000-03-00'. Нужно к дате прибавить интервал. Я это делал так
SET FinishTime=FinishTime+TimeRange;
Выражение работало для TimeRange, кратных 1, например для одного месяца '0000-01-00' Но в общем случае FinishTime возвращал в таблицу нулевые значения в результате некорректного выполнения операции. В MySQL для этого есть функции сложения даты/времени, но конкретно к моей ситуации я не знаю как их приспособить, не хватает опыта.
Я написал вот такое решение. Оно очень громоздкое, но работает
BEGIN
DECLARE Time1 DATETIME;
Declare TimeRange DATETIME;
SET Time1='2020-01-01';
SET TimeRange='0000-03-02';
SELECT Time1 + INTERVAL MONTH(TimeRange) MONTH + INTERVAL DAY(TimeRange) DAY + INTERVAL YEAR(TimeRange) YEAR;
END
Время прибавляет правильно
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Какая бд лучше справиться с хранением больших таблиц, +30-50GИз вариантов MySQL 8
Вопрос: Возможно ли как-то указать в sql запросе модерируемый объем памяти? Предположим есть большая база данных, а у меня всего 4 гб свободной...