|
v8: Вычитание таблиц по двум ключевым полям | ☑ | ||
---|---|---|---|---|
0
geka-geka
29.08.12
✎
10:30
|
Хочу выбрать записи из таблицы СдельныйНарядИсполнители, которых нет в таблице ВТ_НаПроверку. Ключем является пара (Наряд,Сотрудник)
Делаю так, но кажется неправильным. Как правильно это сделать? ВЫБРАТЬ СдельныйНарядИсполнители.Ссылка КАК Ссылка, СдельныйНарядИсполнители.Сотрудник КАК Сотрудник, СдельныйНарядИсполнители.СуммаКНачислениюРегл ИЗ ВТ_НаПроверку КАК ВТ_НаПроверку, Документ.СдельныйНаряд.Исполнители КАК СдельныйНарядИсполнители ГДЕ НЕ(СдельныйНарядИсполнители.Ссылка = ВТ_НаПроверку.Наряд И СдельныйНарядИсполнители.Сотрудник = ВТ_НаПроверку.Сотрудник) |
|||
1
Classic
29.08.12
✎
10:34
|
ВЫБРАТЬ
СдельныйНарядИсполнители.Ссылка КАК Ссылка, СдельныйНарядИсполнители.Сотрудник КАК Сотрудник, СдельныйНарядИсполнители.СуммаКНачислениюРегл ИЗ Документ.СдельныйНаряд.Исполнители КАК СдельныйНарядИсполнители ЛЕВОЕ СОЕДИНЕНИЕ ВТ_НаПроверку КАК ВТ_НаПроверку ПО СдельныйНарядИсполнители.Ссылка = ВТ_НаПроверку.Наряд И СдельныйНарядИсполнители.Сотрудник = ВТ_НаПроверку.Сотрудник ГДЕ ВТ_НаПроверку.Сотрудник Есть NULL СдельныйНарядИсполнители.Сотрудник Есть NULL |
|||
2
Classic
29.08.12
✎
10:35
|
Последнюю строку не надо
|
|||
3
geka-geka
29.08.12
✎
10:42
|
ВЫБРАТЬ
СдельныйНарядИсполнители.Ссылка КАК Ссылка, СдельныйНарядИсполнители.Сотрудник КАК Сотрудник, СдельныйНарядИсполнители.СуммаКНачислениюРегл ИЗ Документ.СдельныйНаряд.Исполнители КАК СдельныйНарядИсполнители ЛЕВОЕ СОЕДИНЕНИЕ ВТ_НаПроверку КАК ВТ_НаПроверку ПО СдельныйНарядИсполнители.Ссылка = ВТ_НаПроверку.Наряд И СдельныйНарядИсполнители.Сотрудник = ВТ_НаПроверку.Сотрудник выдает записи, которые есть и там и там |
|||
4
acsent
29.08.12
✎
10:44
|
(3) значит таблицы одинаковы
|
|||
5
geka-geka
29.08.12
✎
10:47
|
вообще разные, но есть пересечение
|
|||
6
geka-geka
29.08.12
✎
10:47
|
(3) как раз и выдает пересечение
|
|||
7
Classic
29.08.12
✎
10:48
|
(3)
Я в (1) написал "Последнюю строку не надо", а не "две последних не надо" |
|||
8
geka-geka
29.08.12
✎
10:51
|
Вот так получилось:
ВЫБРАТЬ СдельныйНарядИсполнители.Ссылка КАК Ссылка, СдельныйНарядИсполнители.Сотрудник КАК Сотрудник, СдельныйНарядИсполнители.СуммаКНачислениюРегл ИЗ (ВЫБРАТЬ ВТ_НаПроверку.Сотрудник КАК Сотрудник, ВТ_НаПроверку.Наряд КАК Наряд ИЗ ВТ_НаПроверку КАК ВТ_НаПроверку) КАК ВложенныйЗапрос, Документ.СдельныйНаряд.Исполнители КАК СдельныйНарядИсполнители ГДЕ НЕ(СдельныйНарядИсполнители.Ссылка = ВложенныйЗапрос.Наряд И СдельныйНарядИсполнители.Сотрудник = ВложенныйЗапрос.Сотрудник) |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |