Я пытаюсь создать запрос, который ТОЛЬКО выводит члены, если они отвечают двум условиям.MYSQL: несколько «противоречащих» условий в одном столбце
Первое условие: Если у пользователя есть соответствующий «идентификатор курса».
Второе условие: Если у пользователя нет соответствующего «курсаID».
Очевидно, это противоречит, поэтому позвольте мне объяснить.
У меня есть две таблицы ...
членов
- ID
- электронной
сертификаты
- ID
- MemberID
- courseID
Когда члены закончить курс они получают сертификат. Сертификация хранит их идентификатор memberID и идентификатор курса. Члены могут иметь несколько сертификатов.
Конечной целью является создание списка отправки электронной почты для продвижения курсов.
Предположим, у нас есть два курса. «Начальный» (курс = 1) и «Промежуточный» (курс ID = 2).
Один член может иметь как сертификаты, по одному для каждого курса. У другого члена может быть только одна, сертификация «Новичок».
Я хочу отправить рекламное письмо всем членам, имеющим сертификат «Новичок». Однако я хочу исключить всех членов с сертификатом «Промежуточный».
Проблема, которую я не могу преодолеть, заключается в том, как исключить членов с сертификатом «Промежуточный».
** я упростил этот пример, на самом деле существует огромное количество различных типов сертификации **
Ниже грубый вопрос я пытался ... Я пытался так, что многие разные запросы.
Любая помощь будет замечательной, спасибо.
// Look Up Recipients
$recipientsQuery = $wpdb->get_results("
SELECT DISTINCT(email)
FROM $memberTable
LEFT JOIN $certificationsTable
ON $memberTable.ID = $certificationsTable.memberID
WHERE courseID = 4 AND courseID != 5
");
Не было бы проще, если бы новичок был сохранен как 1 и промежуточный как 2? – Strawberry