MySQL / phpMyAdmin: удалить все строки без 3 конкретных - PullRequest
0 голосов
/ 08 февраля 2011

Я хочу удалить все строки в моей таблице, кроме трех конкретных строк.

Каков был лучший способ сделать это?

Привет

1007 * Javi *

Ответы [ 2 ]

1 голос
/ 08 февраля 2011

Это должно работать для удаления всего, кроме идентификаторов 56, 57 и 58:

DELETE FROM tablename WHERE id NOT IN (56, 57, 58);
0 голосов
/ 08 февраля 2011

Это будет зависеть от размера таблицы, но самый простой способ - просто удалить все строки, кроме тех, которые вы хотите сохранить, например:

DELETE FROM table WHERE ID NOT IN (1,2,3)

Если таблица большая, это может занять некоторое время, поэтому лучшим вариантом может быть создание временной таблицы, вставка в нее трех строк, которые вы хотите сохранить, усечение исходной таблицы и повторная вставка 3 строк. .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...