![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как правильно написать select ... in по двум полям?
SergP © (2005-02-24 19:05:00)Пишу примерно так:
select * from table1
where field1||'/'||field2 not in
(select field1||'/'||field2 from table2)
Оно работает. Только есть сомнения в том насколько правильно использовать в таком случае конкатентацию.
Есть ли еще какие-нить способы делать select ... in по нескольким полям?
SergP (2005-02-24 23:44:00) [1]
> и построить индекс на table2 по field1 и field2.
это обязательное условие или просто желательное для ускорения выполнения запроса?
JohnnyJ (2005-02-24 20:25:00) [2]с учетом [1]:
select *
from table1 as a
where not exists (select 1
from table2 as b
where b.field1 = a.field1
and b.field2 = a.field2);
и построить индекс на table2 по field1 и field2.
SergP (2005-02-24 19:11:00) [3]СУБД Oracle
SergP (2005-02-24 19:08:00) [4]имеется ввиду то что символа '/' не может быть в вышеуказаных полях.