2015-08-24 4 views
0

Я не мог решить следующее, используя LEFT JOIN с условием ON левой таблицы colC = Правая таблица colBB И Правая таблица colAA НЕ НЕТ.MySQL Left Join with Right Field Null Check

левой Таблица

colA  colB  colC 
----  ----  ----- 
a   1   x 
b   2   y 
c   3   z 

Права Таблицы

colAA  colBB 
----  ----- 
NULL  y 

Моя цель достижение (ниже), чтобы все записи на левой таблице, что colC соответствует таблице справа colBB с условием на правой таблице colAA является не ноль.

Результат

colA  colB colC 
----  ---- ---- 
a   1  x 
c   3  z 

Как добиться этого в заявлении MySQL?

Спасибо.

+0

редактировал вопрос для обработки одной записи NULL – d4v1dv00

ответ

1

Запрос

select l.colA, 
l.colB, 
l.colC 
from leftTbl l 
join rightTbl r 
on l.colC = r.colBB 
where r.colAA is not null; 

Fiddle demo

+0

извините, но оператор возвращает пустые записи. мое ожидание указано в приведенном выше результате. Спасибо, в любом случае. – d4v1dv00

+0

Пустые записи ?? Пожалуйста, проверьте ссылку на скрипку в моем ответе. – Wanderer

+0

ОК, я знаю, почему он пуст. Скажем, если у моей правой таблицы есть только одна запись по ссылке выше строки NULL и «y»? – d4v1dv00