#mysql #sql
#mysql #sql
Вопрос:
У меня есть две таблицы, A и B, со столбцом «ID», и мне нужен только идентификатор из таблицы A, которого нет в таблице B. Я нашел команду, которая, кажется, отлично подходит для этого, EXIST / MINUS , но, похоже, она не работает в моем случае… Ошибка синтаксиса SQL # 1064 Не могли бы вы знать запрос для этого, пожалуйста?
Комментарии:
1. Пожалуйста, предоставьте образцы данных, желаемые результаты и ваш текущий запрос.
2. Вы можете использовать
NOT EXISTS
илиNOT IN
. В стандартном SQL вы также можете использоватьEXCEPT
(который вызываетсяMINUS
в Oracle), но это недоступно в MySQL.3. В следующий раз, пожалуйста, покажите свой запрос, чтобы мы могли сказать вам, что вызывает ошибку.
Ответ №1:
Основываясь на вашем описании, запрос звучит как:
select a.*
from a
where not exists (select 1 from b where b.id = a.id);