Доброго дня! Есть прямой запрос к журналу с выборкой по одному виду документа и получения некоторых значений из шапки, а как можно получить количество строк в табличной части в прямом запросе ?
+(4)
А к примеру:
count(жур.iddoc) over (partition by left(жур.date_time_iddoc, 8)) as [СтрокВДень]
Sserj
6 - 09.03.21 - 16:46
А или все перепутал. Это количество строк в самом запросе написал.
Тебе видимо нужно
select
...
, СтрокиДокументов.Количество as [КоличествоСтрок]
from
_1SJOURN as жур
outer apply (select count(*) as [Количество]
from $ДокументСтроки.ВидДокумента as док
where док.iddoc = жур.iddoc) as СтрокиДокументов
zenon46
7 - 09.03.21 - 16:53
(6) что-то не осилил я оконные функции, попробую позже, сделал немного по другому.
mikecool
8 - 09.03.21 - 17:57
(6) ого как, это типа замена группировки с подсчетом количества?
Sserj
9 - 10.03.21 - 04:36
(8) Ну да типа того, только преимущества APPLY в том что SQL применяет этот запрос к каждой строке результирующей выборки, т.е. не нужно повторять все условия как было в соединении с запросом и группировкой, тут уже отобраны только нужные жур.iddoc и второе самое главное APPLY очень хорошо поддается обработке в несколько потоков. Может на SQL2008 это и не будет очень заметно, а вот от SQL2014 и выше такой запрос может отработать на всех доступных ядрах.