Ошибка при выполнении SQL-запроса для разделения алгебры отношений в MySQL - PullRequest
1 голос
/ 18 января 2012

У меня есть 3 таблицы (provider, provider_has_product, product): enter image description here

(Оригинал здесь: http://content.screencast.com/users/Maksold/folders/Jing/media/4e6de435-eeac-4602-95e0-2a1b0b4876ad/2012-01-18_0851.png)

Я пробовал операцию деления по этому коду:

SELECT DISTINCT `provider_has_product`.`provider_id` FROM `provider_has_product` WHERE NOT EXIST
 (SELECT * FROM `product` WHERE NOT EXIST
  (SELECT * FROM `provider_has_product` A1 WHERE 
     A1.`provider_id` = `provider_has_product`.`provider_id` AND
     A1.`product_id` = `product`.`id`))

Но это не сработает. Он показывает: Error Code: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SELECT * FROM product WHERE NOT EXIST (SELECT * FROM provider_has_p 'в строке 2`

Как сделать деление на MySQL и исправить эту ошибку.

1 Ответ

3 голосов
/ 18 января 2012

Проверьте на опечатку. Я уверен, что это EXISTS, а не EXIST

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