Предположим таблицу со следующими столбцами:
pri_id
, item_id
, comment
, date
Мне нужен SQL-запрос, который удалит все записи для конкретного item_id
, который старше указанной даты, НО только до тех пор, пока для этого item_id
. Имеется более 15 строк.
Это будет использоваться для очистки записей комментариев старше 1 года для элементов, но я все еще хочу хранить как минимум 15 записей в любой момент времени. Таким образом, если бы у меня был один комментарий в течение 10 лет, он никогда не был бы удален, но если бы у меня было 100 комментариев за последние 5 дней, я бы сохранил только самые последние 15 записей. Это, конечно, произвольное количество записей и сроки для данного примера.
Я бы хотел найти очень общий способ сделать это, который бы работал в mysql, oracle, postgres и т. Д. Я использую библиотеку phps adodb для абстракции БД, поэтому я хотел бы, чтобы она работала хорошо с этим, если это возможно .