@kuzyairon

Как удалить определенные строки по временным рамкам в БД MYSQL?

Смысл заключается в следующем
Есть таблица куда заносятся данные после того как покупатель сделает покупку
Id, key, amount, dt_start, dt_end

Покупателю выдается временный ключ на то, чтобы он мог пользоваться сервисом
Момент активации и момент окончание ключа.

Вопрос следующий, как мне удалить строчку с ключом когда срок действия ключа истекает?

$query = "DELETE FROM n_table WHERE 'dt_start' <= NOW() AND 'dt_end' <= NOW()";
mysqli_query($db, $query);


Код следующий, я понимаю что он не правильный, но где ошибка? Обучаюсь только, не всю логику связать еще могу

UPD:

Но теперь удаляет вообще все строки
  • Вопрос задан
  • 66 просмотров
Решения вопроса 1
@kuzyairon Автор вопроса
Решил данной строкой

$query = "DELETE FROM `number` WHERE dt_end < NOW() - INTERVAL 30 second";


Удаляет по времени "Сейчас" + 30 секунд
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Прямыми кавычками ( ' или " ) обозначаются строки. Названия таблиц, полей, и т.п. берутся в обратные кавычки ( ` ).
Ну и нет смысла проверять начало интервала.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы