SQLinfo.ru - Все о MySQL

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

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

Вы не зашли.

#1 01.05.2019 09:07:31

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

Изменить status записей у наиболее старых записей из селекта

Здравствуйте. Есть необходимость:

Изменить status  записей на `status` = 3  у наиболее старых записей из этого селекта, оставив статус =1 у двух наиболее свежих
.
Например при данном селекте

SELECT `phonenum`, count(*) FROM `tbl_post` WHERE `status`=1 and `author_id`=1 GROUP BY `phonenum` HAVING count(*)>2;

получили результат:

phonenum       count(*)
9206948489    5
9234302224    4
9505652038    3

Надо из каждой строчки с phonenum оставить только 2 самые свежие записи в `status` = 1, а наиболее старым задать `status` = 3

Чтобы получить
phonenum       count(*)
9206948489    2
9234302224    2
9505652038    2
Прим: Время записи задается параметром create_time

Неактивен

 

Board footer

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