|
|
Как получить разность двух таблиц в запросе? |
☑ |
|
0
quick
02.10.04
✎
12:49
|
собственно, в теме вопрос
|
|
|
1
Волшебник
02.10.04
✎
12:53
|
|
|
|
2
quick
02.10.04
✎
12:56
|
|ВЫБРАТЬ а из Таблица1
|ГДЕ а НЕ В (ВЫБРАТЬ РАЗЛИЧНЫЕ б из Таблица2)
ругается:
"Поле из запроса для операции В не может содержать составной тип"
|
|
|
3
quick
02.10.04
✎
12:59
|
Поменяла местами "а" и "НЕ". Легче не стало ((
|
|
|
4
Волшебник
02.10.04
✎
12:59
|
(2) Сделай во втором запросе фильтр
ГДЕ Поле ССЫЛКА Справочник.Номенклатура
или примени ВЫРАЗИТЬ
приводи сюда полный текст запроса и структура своей БД.
|
|
|
5
quick
02.10.04
✎
13:14
|
Кажется, это не то. а и б - типа "ДокументСсылка". Таблица1 и Таблица2 - 2 таблицы остатков разных регистров накопления. Текст запроса в точности такой.
|
|
|
6
Волшебник
02.10.04
✎
13:28
|
Приведи сюда полную структуру регистров. Измерения, ресурсы - тип каждого.
|
|
|
7
quick
02.10.04
✎
14:08
|
Заработало вот так:
ВЫБРАТЬ
ПартииТМЦОстатки.ДокументПокупки
ИЗ
РегистрНакопления.ПартииТМЦ.Остатки КАК ПартииТМЦОстатки
ГДЕ
(НЕ ПартииТМЦОстатки.ДокументПокупки В
(ВЫБРАТЬ
ВЫРАЗИТЬ (ПартииТМЦБухОстатки.ПартияУпр КАК Документ.ТМЦПокупка)
ИЗ
РегистрНакопления.ПартииТМЦБух.Остатки КАК ПартииТМЦБухОстатки))
ИЛИ (НЕ ПартииТМЦОстатки.ДокументПокупки В
(ВЫБРАТЬ
ВЫРАЗИТЬ (ПартииТМЦБухОстатки.ПартияУпр КАК Документ.ТМЦОприходование)
ИЗ
РегистрНакопления.ПартииТМЦБух.Остатки КАК ПартииТМЦБухОстатки))
Для конструкции "В" не дает использовать составной тип. Поэтому пришлось разделять и через ИЛИ. Спасибо за "ВЫРАЗИТЬ".
|
|