Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Помогите с группировкой в запросе

Помогите с группировкой в запросе
Я
   KIraA
 
12.12.18 - 09:38
УП. 8.3.

Есть Контрагент-у него есть объекты с различными статусами. Нужно выбрать только тех Контрагентов у которых  КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ОБ_ох.СтатусОбъекта) = 1 и соответственно его статус).

Вот запрос
|ВЫБРАТЬ
|    ОБ_ох.Контрагенты КАК Контрагенты,
|    ВЫБОР
|        КОГДА КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ОБ_ох.СтатусОбъекта) = 1
|            ТОГДА ОБ_ох.СтатусОбъекта
|    КОНЕЦ КАК Поле1
|ИЗ
|    ОБ_ох КАК ОБ_ох
|
|СГРУППИРОВАТЬ ПО
|    ОБ_ох.Контрагенты,
|    ОБ_ох.СтатусОбъекта";

Что не так?
 
 
   Mankubus
 
1 - 12.12.18 - 09:45
Посчитай количество во вложенном запросе
   DrWatson
 
2 - 12.12.18 - 09:46
(0) Когда СтатусОбъекта стоит в группировках, тогда КОЛИЧЕСТВО(ОБ_ох.СтатусОбъекта) всегда будет 1.
Нужно отдельным подзапросом выбрать контрагентов, удовлетворяющих условию. И внутренним соединением уже его статус.
Если без "соответственно его статус", то становится всё гораздо проще.
   KIraA
 
3 - 12.12.18 - 10:01
Спасибо за идею, сработало
   olegves
 
4 - 12.12.18 - 10:03
достаточно в конце запроса дописать:
ИМЕЮЩИЕ КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ОБ_ох.СтатусОбъекта) = 1
   catena
 
5 - 12.12.18 - 10:31
(4)Да? И что же это даст?
   НЕА123
 
6 - 12.12.18 - 10:45
|ВЫБРАТЬ
|    ОБ_ох.Контрагенты КАК Контрагенты,
|    Максимум(ОБ_ох.СтатусОбъекта) КАК СтатусОбъекта
|ИЗ
|    ОБ_ох КАК ОБ_ох
|
|СГРУППИРОВАТЬ ПО
|    ОБ_ох.Контрагенты
|   ИМЕЮЩИЕ КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ОБ_ох.СтатусОбъекта) = 1

Список тем форума
Рекламное место пустует  Рекламное место пустует
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует