Хитрый Left Join

Мутник

Новичок
Хитрый Left Join

есть какой то запрос с несколькими джойнами.

и вот в одном из них есть нечто вида:

[sql]
LEFT JOIN ContractsFNets on (H323RemoteAddr LIKE CFNIPMask)
[/sql]

можно ли приписать какое то условие и как это сделать, вида примерно следующего:

[sql]
LEFT JOIN ContractsFNets on (H323RemoteAddr LIKE CFNIPMask and A LIKE B (where b not null))
[/sql]
т.е. добавлять еще одно условия в джойне только в том случае, если одна из колонок не является НУЛЛем?
 

Мутник

Новичок
а не будет ли результатом только те строки, где b not null???

т.е. все остальные исключатся!?
 

Demiurg

Guest
разве тебе это не надо ?
это обычные логические операторы
 

Мутник

Новичок
Demiurg

нет, мне надо НЕ это.

мне надо везде применить первый вид джойна, без доп. условий, а если ВДРУГ появляется какая то ячека с НЕ НУЛЕМ, то ее подключить для доп. условия.
 

Demiurg

Guest
для какого еще дополнительного условия ?
 

Мутник

Новичок
Demiurg


LEFT JOIN ContractsFNets ON ( H323RemoteAddr LIKE CFNIPMask )

это стандарт. с ним везде работает...

НО сущестует еще одна колонка: CFNANIMask, которая в 99% случаев имеет значение NULL, но иногда там бывает какое то значение. Вот если там НЕ Null, то хочу сделать что то типа:

LEFT JOIN ContractsFNets ON ( H323RemoteAddr LIKE CFNIPMask and CalledStationId LIKE CFNANIMask)
 

Demiurg

Guest
Сейчас, конечно найдутся "добрые" люди, которые тебе дадут конечный ответ, но я бы тебе посоветовал немного подумать самому, тем более, что я тебе сказал куда копать. Надо просто немного вспомнить логику и/или
 

Мутник

Новичок
Demiurg

да с логикой все ок.. я просто не понимаю, можно ли такое сделать...

то что ты сказал, конечно, хорошо, но чуток не то.

да не надо мне "добрых" людей...

существует ли такая конструкция с IF'oм может быть - вот что интересно...
 

Demiurg

Guest
ненужны никакие ифы, нужно подумать.
все очень просто.
 
Сверху