Показать сообщение отдельно
Старый 04.09.2012, 15:47   #7  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,443 / 1781 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
Цитата:
Сообщение от propeller Посмотреть сообщение
X++:
        select count (RecId) from inventTrans
        group by ItemId    
        join inventDim
        group by InventSizeId, InventLocationId, InventColorId
        where inventDim.inventDimId      == inventTrans.inventDimId &&
              inventDim.InventLocationId == inventLocation.InventLocationId;
а как в таком запросе посчитать количество результирующих строк?
Количество групп? Или суммарное количество строк во всех группах?
Если первое - то только перебором, если второе - то просто уберите все group by.

Цитата:
Сообщение от propeller Посмотреть сообщение
в этом варианте RecId = 1, хотя на самом деле строк больше.
Это количество строк в первой группе.

P.S.: Ещё, если очень хочется, то задачу рассчёта количества групп можно преобразовать в задачу подсчёта неповторяющихся строк, которую можно попытаться решить через notexists join.

Последний раз редактировалось S.Kuskov; 04.09.2012 в 16:05.