Как удалить строку после проверки, если она существует / не существует из той же таблицы? - PullRequest
0 голосов
/ 15 апреля 2019

Как удалить строку после проверки, существует ли она / не существует из той же таблицы?

Как проверить, существует ли rowID в той же таблице и, если существует, удалить его, в противном случае он не должен жаловаться.

delete from Mistake_Table where exists(select id from Mistake where id=3);

Не работает, он удаляет все!

1 Ответ

1 голос
/ 15 апреля 2019

Причина, по которой ваш запрос удаляет все строки, заключается в том, что если любая строка существует с id = 3, выражение EXISTS будет истинным для всех строк, следовательно, все они будут удалены.

Чтобы решить вашу проблему, вы можете просто написать

DELETE FROM Mistake_Table WHERE id=3

, и он удалит только строку с id = 3, если она существует.

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