У меня есть такая таблица:
CREATE TABLE vhist ( id int(10)
unsigned NOT NULL auto_increment,
userId varchar(45) NOT NULL,
mktCode int(10) unsigned NOT NULL,
insertDate datetime NOT NULL,
default NULL, PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
Пользователь может иметь более одной записи.
Мне нужен оператор SQL, который будет хранить самые последние 50 записей и удалять любую вещь после этого ограничения.
Мне нужно это в одном SQL-выражении.
Я пробовал это, но не смог
delete from vhist v where v.id not in
(select v.id from vhist v where
v.userId=12 order by insertDate desc
limit 50)
но это не удалось на MYSQL, сказав, что IN нельзя использовать с ограничением.
Любая помощь?