Как выбрать из таблицы и удалить все остальные невыбранные записи? - PullRequest
0 голосов
/ 23 мая 2011

Есть ли элегантный способ удалить все невыбранные записи из таблицы после ее выбора?

Ответы [ 2 ]

1 голос
/ 24 мая 2011

Я думаю, что вы имеете в виду DELETE, а не DROP.DROP может удалить только весь объект (например, TABLE).Если вас не беспокоит производительность, у вас может быть что-то вроде

DELETE FROM mytable WHERE mytable_key NOT IN 
  (SELECT mytable_key FROM mytable WHERE some_or_another_condition);

Многие БД допускают синтаксис типа JOIN, который, вероятно, будет работать лучше, если вам придется делать это часто.1008 *

0 голосов
/ 24 мая 2011

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

удалите из SomeTable, где НЕТсостояние)

...