- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу

Как удалить плохие SEO-ссылки и очистить ссылочную массу сайта
Применяем отклонение ссылок
Сервис Rookee

В 2023 году 36,9% всех DDoS-атак пришлось на сферу финансов
А 24,9% – на сегмент электронной коммерции
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Добрый день.
Предположим есть табица с какими-то данными,
user_id1
user_id2
как удалить одним запросом mysql все записи с user_id = 1 начиная с Х в обратном направлении.
начиная со старых
1 2
1 3
1 4
1 5
2 1
2 2
2 3
2 4
1 6
1 7
1 8
1 9
Надо что бы осталось, нпример 5 последних записей user_id=1
1 5
1 6
1 7
1 8
1 9
спасибо.
интересует возможное решенеие только на mysql
delete from table WHERE user_id <= x
хотя нет, жтот вариант вам не подойдет
вам нужно завести в таблице автоинкрементное поле и удалять по нему
добавьте поле id которое будет автоинкрементное, тогда все будет гораздо проще.
сейчас тоже можно это решить. сначала определиться с ортировкой, потом посчитать общее количество записей, потом удалить нужное.
select count(*) FROM table
delete from table LIMIT x
где х это значение предыдущего запроса за минусом того сколько хотите оставить
delete from table where user_id1=1 and user_id2<5
спасибо за ответы.
что-то я не понимаю наверное но решения ни одного не увидел.
даже если бы было поле айди, не понимаю как оно может помочь.
user_id1=1 and user_id2<5 = а это вообще из другой серии.
даже если бы было поле айди, не понимаю как оно может помочь.
Очень помог бы.
DELETE FROM table WHERE user_id1=1 AND id NOT IN (
SELECT id FROM table WHERE user_id1=1
ORDER BY новые вверху
LIMIT сколько оставить
)
---------- Добавлено 29.08.2015 в 12:08 ----------
Если БД поддерживает ROWID, то можно через него и без айди
Добрый день.
Предположим есть табица с какими-то данными,
user_id1
user_id2
как удалить одним запросом mysql все записи с user_id = 1 начиная с Х в обратном направлении.
начиная со старых
1 2
1 3
1 4
1 5
2 1
2 2
2 3
2 4
1 6
1 7
1 8
1 9
Надо что бы осталось, нпример 5 последних записей user_id=1
1 5
1 6
1 7
1 8
1 9
спасибо.
интересует возможное решенеие только на mysql
Получаете количество.
select count(*) from table where user_id=1 order by id
Удаляете
delete from table where user_id=1 order by id desc limit (количество-5)
Надо что бы осталось, нпример 5 последних записей user_id=1
У mysql нет понятия последней записи. Строки могут в любом порядке располагаться. Чтобы отследить, какая запись последняя, нужно использовать ключ с автоинкрементом, либо сохранять время.