|
Вроде простой запрос ? |
☑ |
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) Спасибо! :-)
|
|