непонятка с вложеным запросом

1. qwertor 13.05.08 16:56 Сейчас в теме
задачка :
типовая Бух.
по бух регистру найти первое движение по проводкам для каждого из договоров.
запросом (без цыклов и таблиц значений)

select distinct
ХозрасчетныйСубконто.Период as Дата,
ХозрасчетныйСубконто.Вид,
ХозрасчетныйСубконто.Значение as Договор , ХозрасчетныйСубконто.Значение.Владелец

From
РегистрБухгалтерии.Хозрасчетный.Субконто as ХозрасчетныйСубконто

where
(ХозрасчетныйСубконто.Вид.Наименование ПОДОБНО "Договор%")
and
( (ХозрасчетныйСубконто.Период) in ( Select top 1 ХозрасчетныйСубконто2.Период
From РегистрБухгалтерии.Хозрасчетный.Субконто as ХозрасчетныйСубконто2
where ХозрасчетныйСубконто2.Значение=ХозрасчетныйСубконто.Значение
order by ХозрасчетныйСубконто2.Период
)
)

все отлично работает ,

теперь подзадача : для каждого договора получить дату первого движения по проводкам одного из договоров того же котнрагента что и сам договор , логично и достаточно кажется заменить строку "where" во вложенном запросе на
ХозрасчетныйСубконто2.Значение.Владелец=ХозрасчетныйСубконто.Значение.Владелец

но увы.. результат какойто не предсказуемый, я непонимаю что оно в итоге отбирает ...

переписать по запросу через другое субконто не предлагать т.к. "Владелец" лишь взят для примера, а надо по другому обобщающему реквизиту..
хочется понять суть ошибки или глюка.


Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. qwertor 13.05.08 17:37 Сейчас в теме
если же попробывать связать вложенный и внешний запрос через регистратор :

select distinct
ХозрасчетныйСубконто.Период as Дата,
ХозрасчетныйСубконто.Вид,
ХозрасчетныйСубконто.Значение as Договор , ХозрасчетныйСубконто.Значение.Владелец

From
РегистрБухгалтерии.Хозрасчетный.Субконто as ХозрасчетныйСубконто

where
(ХозрасчетныйСубконто.Вид.Наименование ПОДОБНО "Договор%")
and
( (ХозрасчетныйСубконто.Регистратор) in ( Select top 1 ХозрасчетныйСубконто2.Регистратор
From РегистрБухгалтерии.Хозрасчетный.Субконто as ХозрасчетныйСубконто2
where ХозрасчетныйСубконто2.Значение.Владелец=ХозрасчетныйСубконто.Значение.Владелец
order by ХозрасчетныйСубконто2.Период
)
)

данный запрос вещает систему намертво с загрузкой 100% ..
пойду покурю профайлер ибо логика отказывает уже
буду признателен за ценные мысли

на всяк случай : 8.1.11 на SQL2005
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот