Как данные за день продублировать на следующий день sql-запросом? (MsSql)
Ответы (1 шт):
Автор решения: Miron
→ Ссылка
Структура используемой таблицы:
CREATE table info(
id int auto_increment primary key,
date DATETIME not null,
_number INTEGER
);
Ее заполнение:
INSERT INTO info
(date, _number)
values
('1000-05-03 00:00:00', 1),
('2001-01-02 00:00:00', 3);
Вот, как можно прибавить n-ое кол-во дней к дате:
DATE_ADD('2008-01-02 13:38:50.02', INTERVAL n DAY)
Не составит труда теперь составить запрос:
INSERT INTO info
(date, _number)
SELECT
DATE_ADD(date, INTERVAL 1 DAY) as date,
_number
FROM
info;
Если вызовем команду SELECT * FROM info, то получим вывод:
id, date, _number
'1', '1000-05-03 00:00:00', '1'
'2', '2001-01-02 00:00:00', '3'
'3', '1000-05-04 00:00:00', '1'
'4', '2001-01-03 00:00:00', '3'
