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

Как снизить ДРР до 4,38% и повысить продажи с помощью VK Рекламы
Для интернет-магазина инженерных систем
Мария Лосева

В 2023 году Google заблокировал более 170 млн фальшивых отзывов на Картах
Это на 45% больше, чем в 2022 году
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Есть таблица:
tags
------------
id tag
1 один
2 два
3 три
4 четыре
5 пять
есть связанные с ней таблицы:
articles
------------
id tags_id
1 1
2 1
3 3
и
images
------------
id tags_id
1 1
2 3
3 5
Как из таблицы tags удалить все не связанные записи (в данном случае 2 и 4)
Помогите построить запрос
Спасибо
DELETE FROM `tags` WHERE `id` NOT IN( (SELECT `tags_id` FROM `articles` GROUP BY `tags_id`) UNION (SELECT `tags_id` FROM `images` GROUP BY `tags_id`));
Как-то так. На работоспособность не проверял, но на глаз должно работать.
Теоретически еще LEFT JOIN с COUNT() == 0 может сработать.
Хотя имхо легче всего скриптом в цикле пройтись и удалить мусор. Решение конечно не такое красивое как один запрос, но зато проще и и быстрее в реализации :)