Я стараюсь удалить все строки, которые не содержат максимальную дату
это мой sql:
delete from campanya_baja where id in (select * from campanya_baja
where not fecha_campanya_baja = (select max(fecha_campanya_baja) from campanya_baja)
group by id_contacto,id_usuario,id_emp_dato,fecha_campanya_baja);
когда я выполняю это, я получаю следующую ошибку: Код ошибки: 1241. Операнд должен содержать 1 столбец (и).
ооо спасибо и извините.
Пожалуйста. Кроме того, в вашем вопросе отсутствует часть последней строки. Это то, что я не могу отредактировать для вас.
См .: Почему я должен предоставлять MCVE для того, что мне кажется очень простым SQL-запросом?
Кроме того, похоже, вы хотите удалить все строки, кроме последней для каждой группы. Это почти всегда быстрее достигается, если создать таблицу со строками, которые вы хотите сохранить, а затем заменить старую таблицу новой.






Ваш первый подзапрос содержит только один столбец (id):
delete from campanya_baja where id in (select id from campanya_baja
where not fecha_campanya_baja = (select max(fecha_campanya_baja) from campanya_baja)
group by id_contacto,id_usuario,id_emp_dato,fecha_campanya_baja);
В будущем помечайте свой код как код, чтобы людям было легче понять ваш вопрос. На этот раз я сделал это за тебя.