Вниз
Скачать: CL | DM;

Как правильно написать select ... in по двум полям?   Найти похожие ветки 

 
SergP ©   (2005-02-24 19:05) [0]

Пишу примерно так:
select * from table1
  where field1||"/"||field2 not in
   (select field1||"/"||field2 from table2)

Оно работает. Только есть сомнения в том насколько правильно использовать в таком случае конкатентацию.

Есть ли еще какие-нить способы делать select ... in по нескольким полям?


 
SergP ©   (2005-02-24 19:08) [1]

имеется ввиду то что символа "/" не может быть в вышеуказаных полях.


 
SergP ©   (2005-02-24 19:11) [2]

СУБД Oracle


 
JohnnyJ ©   (2005-02-24 20:25) [3]

с учетом [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 23:44) [4]


> и построить индекс на table2 по field1 и field2.


это обязательное условие или просто желательное для ускорения выполнения запроса?



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.034 c
3-1109419663
GanibalLector
2005-02-26 15:07
2005.03.27
кол-во записей в двух таблицах.


14-1109941590
olookin
2005-03-04 16:06
2005.03.27
Как тестируют сайты?


4-1108538439
Гость
2005-02-16 10:20
2005.03.27
Кэш


14-1110059947
0x011001
2005-03-06 00:59
2005.03.27
Сайт


14-1107905898
GanibalLector
2005-02-09 02:38
2005.03.27
Крис Касперски




   Наверх