У меня 1080 строк с одинаковой датой — 2018-02-26 12:31:31
id
столбец установлен из 1
в 1080
,
Я хочу постепенно обновлять date
столбец, поэтому каждая следующая строка на один день больше предыдущей.
for ($x = 1; $x <= 1080; $x++) {
$st = $db->query("update posts set date = date_add(date, interval " . $x . " day) where id =" . $x);
$st->execute();
}
В конечном итоге есть поля даты, такие как 2024-02-15 ...
или же 2023-05-14 ...
и тому подобное.
Что случилось?
Как насчет просто добавить id
(в днях) до даты:
update posts
set date = date + interval id day;
Попробуй это
Чтобы обновить одну строку
UPDATE posts SET `date` = DATE_ADD(`date` , INTERVAL 1 DAY) WHERE `id` = 5
Чтобы обновить все строки в таблице записей
UPDATE posts SET `date` = DATE_ADD(`date` , INTERVAL 1 DAY)
PDO соединение
for ($x = 1; $x <= 1080; $x++) {
$st = $db->prepare("update posts set date= date_add(date, interval " . $x . " day) where id=" . $x);
$st->execute();
}