Запросить две отдельные таблицы, передавая результаты во втором запросе, сохраняя результаты только первого запроса, если второй запрос возвращает ноль

Каков наилучший способ сделать запрос к таблице, а затем передать результат другому запросу в другой таблице, но сохранить результаты первого запроса только в том случае, если второй запрос возвращает ноль или пуст?

я пытаюсь SELECT id, name, email FROM ACCOUNT WHERE email IN ('[email protected]', '[email protected]')
Затем возьмите возвращенные идентификаторы и SELECT memberId=1 and member2Id = (the returned id) FROM FAMILY IF NULL, Если его значение NULL, верните данные в первом запросе или удалите этот элемент из результатов первого запроса.

Какой самый эффективный способ сделать это? Первоначально я собирался сделать первый запрос. Затем передайте полученные идентификаторы в массив. Затем выполните итерацию по массиву, передавая идентификаторы во втором запросе, и если он вернет не ноль, то я удалю идентификатор из массива. Однако это кажется крайне неэффективным, поскольку я буду выполнять два отдельных запроса. Я новичок в SQL, поэтому, если есть лучший способ сделать это, я хотел бы узнать, спасибо!

0

Решение

я считать то, о чем вы говорите, но вам может понадобиться расширить свое объяснение:

SELECT id, name, email FROM ACCOUNT
WHERE email IN ('[email protected]', '[email protected]')
AND id not in (select member2Id from FAMILY where memberId=1)
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]