ms-access EXISTS запрос на удаление строк - PullRequest
1 голос
/ 30 мая 2011

Мне нужно удалить данные из таблицы. вот как выглядят данные (первые два столбца):

alex hub
liza fds
harry ok
lena yyy
liza ok

Мне нужен запрос, который удалит все строки при следующем условии: если второй столбец содержит "ok", то удалите все строки, содержащие это имя.

таким образом, результирующий набор данных будет:

alex hub
lena yyy

как вы можете видеть, все вхождения harry и liza были удалены. пока у меня есть следующее:

delete from table1 where column1 in (
select column1 from table1 where column2='ok')

Ответы [ 2 ]

2 голосов
/ 30 мая 2011
DELETE FROM Table1 AS t1
WHERE Exists (
    SELECT t2.column1
    FROM Table1 AS t2
    WHERE
        t2.column2 = "ok"
        And t2.column1 = t1.column1);
0 голосов
/ 30 мая 2011

Есть причина, по которой вы не можете сделать:

DELETE *
FROM table1
WHERE column2 = 'OK'

??

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