У меня есть запрос, который нуждается в счетчике COLA groupbed от colB двухкомпонентной частности среднего COlC значения. напримерПреобразование Sub запроса в одном запрос улого
SELECT COUNT(X.colA), X.colB , X.MEASURE
FROM (
SELECT colA , colB , avg(colC) MEASURE
FROM tableA
GROUP BY colA, colB
HAVING round(avg(colC),2) > 0
) X
GROUP BY X.MEASURE , X.colB
HAVING X.MEASURE BETWEEN 0 AND 3000
ORDER BY MEASURE
Примера результат может быть
No of User, URL , average time spent
90182 , abc.com, 334
293556 , def.com, 33
Проблема с выше запросом является то, что, поскольку он имеет вспомогательный запрос внутренний запрос к югу перемешивает огромное количество данных в качестве промежуточного результата к внешнему запросу, который приводит к очень медленному выполнению запросов на больших наборах данных.
Есть ли способ, которым мы можем преобразовать выше запрос в запрос без какого-либо подзапроса или имеется ли какой-либо доступный UDAF, чтобы не было более крупного перетасовки промежуточных данных и он запускался в один этап?