2016-06-22 2 views
0

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

SELECT * 
    FROM D 
    WHERE D.C IN (
     SELECT A.* 
     FROM A 
     LEFT JOIN B ON (A.C = B.C) 
     WHERE B.C IS NULL) 

В основном хочет, чтобы получить весь этот не соответствие в сравнение от A.Column & B.Column для выбора в D на основе результата A & B.

Edited показать пример кода в реальном приложении:

Это пример код в PHP используется для отправки уведомлений продлений для истекающих пользователей и ведения журнала в два таблиц рассыльщика & продления на основе истекшие пользователи:

 SELECT * FROM expiring_users WHERE expiring_users.id IN(
      SELECT mailer_log.* 
      FROM mailer_log 
      LEFT JOIN renewals_log ON (mailer_log.id = renewals_log.id) 
      WHERE renewals_log.id IS NULL) 

Надеюсь, что этот hepls не отменяет ситуацию.

+0

но каков столбец в 'A' или' B', который вы хотите совместить с 'D.C'? – arilia

+0

Я думаю, вам следует опубликовать некоторые данные примера и ваш ожидаемый результат, который будет более полезен для нас, чтобы понять ваш вопрос. – Blank

+0

@ Все, это часть моего кода, где я делаю выбор:. 'SELECT * FROM expiring_users WHERE expiring_users.id IN (SELECT, mailer_log * ИЗ mailer_log LEFT JOIN renewals_log ON (mailer_log.id = renewals_log.id) WHERE renewals_log.id IS NULL) ' – sitedevcode

ответ

0

У него работа. Для других в этой ситуации, я использовал код ниже:

SELECT * FROM expiring_users 
WHERE expiring_users.id IN(
    SELECT mailer_log.id 
    FROM mailer_log 
    LEFT JOIN renewals_log ON (mailer_log.id = renewals_log.id) 
    WHERE renewals_log.id IS NULL) 

Он получает все записи из таблицы expiring_users на основе не подогнанные записей в mailer_log и renewals_log.

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

Смежные вопросы