|
Как использовать Exists в запросе |
☑ |
0
Gobo
20.05.13
✎
06:52
|
Доброе время суток !
Как на русском написать запрос с использованием exists в стандартного SQL ?
Мне надо выбрать из одной таблицы данные, которые не встречаются в другом.
На SQL бы написал так:
select * from table1 tab1
where not exits (select 1 from table2 tab2 where tab2.s_id=tab1.p_id)
|
|
1
vis_tmp
20.05.13
✎
06:53
|
НЕ В (...)
|
|
2
Jonny_Khomich
20.05.13
✎
06:53
|
(0) 1с поддерживает запросы на T-SQL, пиши так
|
|
3
йети
20.05.13
✎
06:54
|
выбрать * Из Табл1
Из Табл1
Левое соединение Табл2
По Табл1.Поле = Табл2.Поле
Где Табл2.Поле ЕСТЬ NULL
|
|
4
el-gamberro
20.05.13
✎
07:16
|
никак, Exists не поддерживается диалектом 1с. пишите запросы по другому
|
|
5
spock
20.05.13
✎
07:30
|
select *
from table1 tab1
where
1 not in (
select 1 from table2 tab2 where tab2.s_id=tab1.p_id
)
|
|
6
Sammo
20.05.13
✎
07:35
|
Никак.
1. В языке 1с нет exists, только in и join-ы
2. Нельзя заставить преобразовать запрос 1с в скулевский запрос с использованием exists
|
|
7
el-gamberro
20.05.13
✎
08:13
|
тогда уж:
select *
from table1 tab1
where
1 in (
select 1 from table2 tab2 where not tab2.s_id=tab1.p_id
)
Это будет ближе по сути к экзисту :)
|
|
8
el-gamberro
20.05.13
✎
08:13
|
(7) к (5)
|
|
9
Gobo
20.05.13
✎
09:44
|
Значит так ?
Выбрать * Из Табл1
ГДЕ НЕ (Табл1.Поле) В (Выбрать Табл2.Поле ИЗ Табл2)
|
|