Имя: Пароль:
1C
1С v8
Вроде простой запрос ?
0 valblack
 
14.09.20
06:36
Всем привет! Нужна помощь в написании запроса. Вроде он должен быть простой, а написать не могу :-(

Есть таблица:
№ Заказа | Упаковка | Количество упаковок
1        | Сумка    | 4
1        | Пакет    | 2
2        | Ящик     | 1
2        | Пакет    | 4
3        | Ящик     | 3
3        | Пакет    | 1
3        | Сумка    | 2
4        | Пакет    | 7
5        | Сумка    | 2

Нужно запросом выбрать номера заказов, в которых нет сумки. То есть это № 2 и № 4
1 SleepyHead
 
гуру
14.09.20
06:41
Ну очевидно же, в такой постановке задачи нужно добавить условие:

ГДЕ номерЗаказа В (2,4)
2 Конструктор1С
 
14.09.20
06:43
(0) в чем проблема? Сначала выбираешь номера, в которых сумка есть, а потом фильтруешь на НЕ вхождение в первую выборку
3 valblack
 
14.09.20
06:50
Sleepy, ну да, постановка слегка хромает :-)

Конструктор, идею понял, спасибо, попробую
4 valblack
 
14.09.20
06:51
off-topic: а как надо правильно писать ответ на сообщение, чтобы было понятно, кому ответил ?
5 valblack
 
14.09.20
06:55
РЕШЕНО:

ВЫБРАТЬ
    Влож.Заказ КАК НомерЗаказа
ИЗ

( ВЫБРАТЬ
    ТаблицаЗаказов.НомерЗаказа КАК Заказ,
    СУММА(
             ВЫБОР КОГДА ТаблицаЗаказов.Упаковка = &Упаковка ТОГДА 1 ИНАЧЕ 0 КОНЕЦ ) КАК Количество
ИЗ
    Справочник.ТаблицаЗаказов КАК ТаблицаЗаказов

СГРУППИРОВАТЬ ПО ТаблицаЗаказов.НомерЗаказа

) КАК Влож

ГДЕ
   Влож.Количество = 0
6 SleepyHead
 
гуру
14.09.20
07:13
(5) Зачем так сложно-то?

Выбрать
   ТаблицаЗаказов.НомерЗаказа
ИЗ
  Справочник.ТаблицаЗаказов КАК ТаблицаЗаказов
ГДЕ
   ТаблицаЗаказов.Упаковка <> &Сумка
7 Конструктор1С
 
14.09.20
07:18
(6) выведет все
8 SleepyHead
 
гуру
14.09.20
07:19
(7) Нет, не все.
9 Конструктор1С
 
14.09.20
07:19
(5) молодец
10 valblack
 
14.09.20
07:19
Выведет
1        | Пакет
2        | Ящик    

и т.д.
11 Конструктор1С
 
14.09.20
07:20
(8) присмотрись внимательно к таблице, выведет и 2 и 4, т.к. в них есть другие упаковки
12 SleepyHead
 
гуру
14.09.20
07:20
(11) Понял.
13 valblack
 
14.09.20
07:21
(9) Спасибо! :-)
Основная теорема систематики: Новые системы плодят новые проблемы.