Есть Контрагент-у него есть объекты с различными статусами. Нужно выбрать только тех Контрагентов у которых КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ОБ_ох.СтатусОбъекта) = 1 и соответственно его статус).
Вот запрос
|ВЫБРАТЬ
| ОБ_ох.Контрагенты КАК Контрагенты,
| ВЫБОР
| КОГДА КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ОБ_ох.СтатусОбъекта) = 1
| ТОГДА ОБ_ох.СтатусОбъекта
| КОНЕЦ КАК Поле1
|ИЗ
| ОБ_ох КАК ОБ_ох
|
|СГРУППИРОВАТЬ ПО
| ОБ_ох.Контрагенты,
| ОБ_ох.СтатусОбъекта";
(0) Когда СтатусОбъекта стоит в группировках, тогда КОЛИЧЕСТВО(ОБ_ох.СтатусОбъекта) всегда будет 1.
Нужно отдельным подзапросом выбрать контрагентов, удовлетворяющих условию. И внутренним соединением уже его статус.
Если без "соответственно его статус", то становится всё гораздо проще.
|ВЫБРАТЬ
| ОБ_ох.Контрагенты КАК Контрагенты,
| Максимум(ОБ_ох.СтатусОбъекта) КАК СтатусОбъекта
|ИЗ
| ОБ_ох КАК ОБ_ох
|
|СГРУППИРОВАТЬ ПО
| ОБ_ох.Контрагенты
| ИМЕЮЩИЕ КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ОБ_ох.СтатусОбъекта) = 1
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой