我在Oracle中有一个大约有1000万行和47列的表。在将数据转换为JSON并将其传输到视图层之前,我对它们进行了一些处理。处理主要是按各列进行选择()分组。 select()的处理每次完成5次,每次都有不同的分组列。现在这需要花费很多时间。有没有办法加快这个过程?
我正在考虑将数据从表中抽取到csv文件中并对其进行处理,然后将数据转换为JSON以发送它。我在想正确的方向吗?请帮忙。
我使用的5个查询是为了更好地理解。
select sum(case when LOWER(column1) LIKE 'succeeded' then 1 else 0 end)/count(*))
from tablename where (TIME_STAMP between 'startTime' and 'endTime')
select column2,sum(case when LOWER(column1) LIKE 'succeeded' then 1 else 0 end)/count(*))
from tablename where (TIME_STAMP between 'startTime' and 'endTime') group by column2;
select column2,column3,sum(case when LOWER(column1) LIKE 'succeeded' then 1 else 0 end)/count(*))
from tablename where (TIME_STAMP between 'startTime' and 'endTime') group by column2,column3;
select column4,column3,sum(case when LOWER(column1) LIKE 'succeeded' then 1 else 0 end)/count(*))
from tablename where (TIME_STAMP between 'startTime' and 'endTime') group by column4,column3;
select column5,column4,column3,sum(case when LOWER(column1) LIKE 'succeeded' then 1 else 0 end)/count(*))
from tablename where (TIME_STAMP between 'startTime' and 'endTime') group by column5,column4,column3;
结果集在JSON的帮助下结合并发送到View层。
EDIT1:此数据库将有多个连接(5-20)。每个连接执行这些相同的查询。