SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 30.04.2019 06:55:19

Vbifyz
Участник
Зарегистрирован: 27.11.2018
Сообщений: 19

Как удалить старые записи в выборке, оставив только самую новую запись?

Подскажите пожалуйста, как задать команду, чтобы вот из этой выборки:

SELECT `title`, `phonenum`, count(*) FROM `tbl_post` GROUP BY `title`,`phonenum` HAVING count(*)>1;

удалить наиболее старые записи в каждой строке, оставив при этом только самую новую по каждой позиции?

Например при данном селекте получили результат:

Квартира,  70 лет Победы, 2 (титл)    915659хххх (номер)   2 (количество записей)
Квартира,  Академика Жук, 12/1, подъезд  927159хххх   3
Квартира,  Алфёрова, 5Б  9887850хххх   4

Надо чтобы при удалении наиболее старых записей остались только по 1 самой новой  записи на каждую строку:

Квартира,  70 лет Победы, 2 (титл)    915659хххх (номер)   1 (количество записей)
Квартира,  Академика Жук, 12/1, подъезд  927159хххх   1
Квартира,  Алфёрова, 5Б  9887850хххх   1



Время записи задается параметром create_time

Неактивен

 

#2 30.04.2019 09:36:35

deadka
Администратор
Зарегистрирован: 14.11.2007
Сообщений: 2422

Re: Как удалить старые записи в выборке, оставив только самую новую запись?

Прочтите тут
и вот схожая тема
https://sqlinfo.ru/forum/viewtopic.php?id=7363


Зеленый свет для слабаков, долги отдают только трусы, тру гики работают только в консоли...

Неактивен

 

#3 01.05.2019 08:54:23

Vbifyz
Участник
Зарегистрирован: 27.11.2018
Сообщений: 19

Re: Как удалить старые записи в выборке, оставив только самую новую запись?

К сожалению у меня не получилось догадаться. Видимо не хватает знаний.

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson