Ошибка при выполнении запроса на удаление MS Access с левым соединением - PullRequest
0 голосов
/ 06 ноября 2018

Я пытаюсь выполнить следующий запрос на удаление, чтобы удалить детали, не связанные с заказом:

  DELETE tblParts.ID
  FROM tblParts 
  LEFT JOIN tblOrders ON tblParts.ID = tblOrders.PartID
  WHERE ((tblOrders.OrderID) Is Null);

Если я использую представление таблицы данных или запрос SELECT вместо DELETE, запрос возвращает записи, которые я ожидаю увидеть там. Если я пытаюсь выполнить запрос, я получаю следующую ошибку:

Укажите таблицу, содержащую записи, которые вы хотите удалить.

Разве оператор FROM не сообщает Access, из какой таблицы удалить? Мой синтаксис для запроса на удаление неверен?

1 Ответ

0 голосов
/ 06 ноября 2018
DELETE
FROM tblParts 
WHERE NOT EXISTS
(
SELECT '1'
FROM tblOrders 
WHERE tblOrders.PartID = tblParts.ID
);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...