|
Запрос (исключение записей одной таблицы, присутствующих в другой в одном запросе) |
☑ |
0
Starhan
21.07.08
✎
09:48
|
Есть две таблицы, нужно выбрать все из первой, кроме тех что присутствуют во второй таблице.
подскажите как?
|
|
1
Маркетолог
21.07.08
✎
09:53
|
(0) Попробуй
Не В (Запрос ко второй таблице)
|
|
2
Mitriy
21.07.08
✎
09:54
|
левое соединение первой со второй с условием на Null на вторую
|
|
3
Кротяра
21.07.08
✎
09:54
|
или
ГДЕ ПОЛЕ_СО_ВТОРОЙ ЕСТЬ NULL
|
|
4
Sadovnikov
21.07.08
✎
09:55
|
Select Таблица1.*
From Таблица1
Left Join Таблица2 On <НужноеСвязываниеПоПроверяемымПолям>
Where Таблица2.K.ЛюбоеПолеИзСвязывания Is NULL
|
|
5
Starhan
21.07.08
✎
10:05
|
спасибо
|
|
6
Тиль
21.07.08
✎
10:06
|
(1)+1 так проще
|
|
7
zergo
21.07.08
✎
10:16
|
был прикол с
НЕ В (Запрос ко втрой таблице)
вылетало с ошибкой что невозможно создать более 255 связанных таблиц. запрос был простенький - чтото вроде выбрать всю номенклатуру из справочника , причем которая не числится в одном из регистров сведений. причем вот это "НЕ В .." было как раз по регистру
|
|
8
Starhan
21.07.08
✎
11:47
|
уточнение на счет ЕстьNull
поля с обоих таблиц нужно выбрать в подзапросе ?
а потом уже проверять на Null?
|
|
9
Mitriy
21.07.08
✎
11:56
|
(8) Если вопрос отновится к (2), то подзапросы не нужны, чо-нить вроде ентого должно работать:
ЛЕВОЕ СОЕДИНЕНИЕ Таблица1 КАК Таблица1 ПО (Таблица1.ПолеСвязи = Таблица2.ПолеСвязи И Таблица2.ПолеСвязи ЕСТЬ NULL )
|
|
10
Mitriy
21.07.08
✎
11:59
|
(9)* Пардон:
...
Из Таблица1 КАК Таблица1
ЛЕВОЕ СОЕДИНЕНИЕ Таблица2 КАК Таблица2 ПО (Таблица1.ПолеСвязи = Таблица2.ПолеСвязи И Таблица2.ПолеСвязи ЕСТЬ NULL )
|
|