Удаление строк по условию - MySQL
Формулировка задачи:
всем привет) мучаюсь уже который день с бд и сейчас совсем попал в ступор.
вообщем имеется таблица со строками вида:
id mac ip port vlan date
1 00:1e:58:af:96:d6 10.90.91.25 28 17 2016-11-13
2 00:1e:58:af:96:d6 10.90.91.25 28 9 2016-11-13
3 00:1e:58:af:96:d6 10.90.91.25 28 17 2016-11-13
4 00:1e:58:af:96:d6 10.90.91.25 28 17 2016-11-13
5 00:1e:58:af:96:d6 10.90.91.25 28 17 2016-11-13
6 00:1e:58:af:96:d6 10.90.91.25 27 17 2016-11-13
7 00:1e:58:af:96:d6 10.90.91.25 27 9 2016-11-13
8 00:1e:58:af:96:d6 10.90.91.25 27 17 2016-11-13
9 00:1e:58:af:96:d6 10.90.91.25 27 17 2016-11-13
10 00:1e:58:af:96:d6 10.90.91.25 27 17 2016-11-13
11 00:1e:58:af:96:d6 10.90.91.25 14 17 2016-11-13
12 00:1e:58:af:96:d6 10.90.91.25 11 17 2016-11-13
13 00:1e:58:af:96:d6 10.90.91.25 19 17 2016-11-13
необходимо из этой таблицы удалить все те порты, на которых есть vlan=9, т.е привести все в такой формат:
id mac ip port vlan date
11 00:1e:58:af:96:d6 10.90.91.25 14 17 2016-11-13
12 00:1e:58:af:96:d6 10.90.91.25 11 17 2016-11-13
13 00:1e:58:af:96:d6 10.90.91.25 19 17 2016-11-13
ничего на ум пока не приходит. очень буду благодарен, кто даст ответ по этой теме)
Решение задачи: «Удаление строк по условию»
textual
Листинг программы
delete from таблица where vlan LIKE '%9%' or PORT in (SELECT PORT FROM таблица WHERE vlan LIKE '%9%');
Объяснение кода листинга программы
Таблица
- название таблицы, из которой удаляются строки.vlan
- название столбца, по которому происходит фильтрация строк для удаления.%9%
- шаблон поиска, который указывает на то, что в столбцеvlan
нужно искать строки, содержащие символ9
.PORT
- название столбца, который используется в подзапросе для определения, какие строки нужно удалить.SELECT PORT FROM таблица WHERE vlan LIKE '%9%'
- подзапрос, который выбирает значения из столбцаPORT
для строк, где в столбцеvlan
содержится символ9
.DELETE FROM таблица
- команда удаления строк из таблицытаблица
.WHERE vlan LIKE '%9%' or PORT in (SELECT PORT FROM таблица WHERE vlan LIKE '%9%')
- условие, которое определяет, какие строки нужно удалить из таблицытаблица
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д