我们有一个由BI应用程序生成的查询(可能很复杂)。
当我第一次运行查询时,大约需要8到9分钟才能执行,但是 当我第二次执行它时,它花费的时间更少(15秒)。 我不确定这是由于查询的复杂性还是因为红移花费了更多时间来准备查询执行计划。
我已经在两个不同的环境中测试了相同的查询,每当它第一次运行时,大约需要8-9分钟的时间,而当我下次运行时,它会在不到10秒的时间内返回结果集。
我怀疑红移在准备查询计划和可执行段上花费了大量时间。 为了澄清这一点,我已经检查了 svl_compile 表,第一次执行时将 compile 字段设置为 1 ,并在以后的其他运行中将其设置为 0 ,并且只要 SELECT 子句中有任何更改,它都会重新编译查询,并花几分钟时间返回结果集。
可以安全地假设: 由于编译查询和准备查询计划,第一次运行会花费更多时间,而仅在收集元数据时会花费更多时间。
如果是,那么有什么办法可以减少编译时间? 即使基础表没有任何数据,它在编译时也会花费相同的时间?
注意:我已在运行查询之前禁用了结果缓存。
将enable_result_cache_for_session设置为OFF;
实例类型:dc2.large
SELECT
replace(dim_product.dow_days,';','\n') AS "dim_product.dow_days",
dim_market.market_name,
replace(dim_product.dow_time,';','\n') AS "dim_product.dow_time",
dim_product.product_name ||'-'|| dim_product.station_name AS
"dim_product.product",
DATE(dim_product.first_telecast_date ) AS "dim_product.first_telecast",
DATE(dim_product.last_telecast_date ) AS "dim_product.last_telecast",
dim_product.hiatus_date AS "dim_product.hiatus_date",
dim_book.book_name AS "dim_book.book_name",
sum(prn.a1214_rating) AS "prn.a1214_rating",
dense_rank() OVER (ORDER BY (sum(prn.a1214_rating)) DESC) AS
"prn.a1214_rating_rank",
sum(prn.a1217_rating) AS "prn.a1217_rating",
dense_rank() OVER (ORDER BY (sum(prn.a1217_rating)) DESC) AS
"prn.a1217_rating_rank",
sum(prn.a1220_rating) AS "prn.a1220_rating",
dense_rank() OVER (ORDER BY (sum(prn.a1220_rating)) DESC) AS
"prn.a1220_rating_rank",
sum(prn.a1224_rating) AS "prn.a1224_rating",
dense_rank() OVER (ORDER BY (sum(prn.a1224_rating)) DESC) AS
"prn.a1224_rating_rank",
sum(prn.a1234_rating) AS "prn.a1234_rating",
dense_rank() OVER (ORDER BY (sum(prn.a1234_rating)) DESC) AS
"prn.a1234_rating_rank",
sum(prn.a1249_rating) AS "prn.a1249_rating",
dense_rank() OVER (ORDER BY (sum(prn.a1249_rating)) DESC) AS
"prn.a1249_rating_rank",
sum(prn.a1254_rating) AS "prn.a1254_rating",
dense_rank() OVER (ORDER BY (sum(prn.a1254_rating)) DESC) AS
"prn.a1254_rating_rank",
sum(prn.a1264_rating) AS "prn.a1264_rating",
dense_rank() OVER (ORDER BY (sum(prn.a1264_rating)) DESC) AS
"prn.a1264_rating_rank",
sum(prn.a12plus_rating) AS "prn.a12plus_rating",
dense_rank() OVER (ORDER BY (sum(prn.a12plus_rating)) DESC) AS
"prn.a12plus_rating_rank",
sum(prn.a1517_rating) AS "prn.a1517_rating",
dense_rank() OVER (ORDER BY (sum(prn.a1517_rating)) DESC) AS
"prn.a1517_rating_rank",
sum(prn.a1520_rating) AS "prn.a1520_rating",
dense_rank() OVER (ORDER BY (sum(prn.a1520_rating)) DESC) AS
"prn.a1520_rating_rank",
sum(prn.a1524_rating) AS "prn.a1524_rating",
dense_rank() OVER (ORDER BY (sum(prn.a1524_rating)) DESC) AS
"prn.a1524_rating_rank",
sum(prn.a1534_rating) AS "prn.a1534_rating",
dense_rank() OVER (ORDER BY (sum(prn.a1534_rating)) DESC) AS
"prn.a1534_rating_rank",
sum(prn.a1549_rating) AS "prn.a1549_rating",
dense_rank() OVER (ORDER BY (sum(prn.a1549_rating)) DESC) AS
"prn.a1549_rating_rank",
sum(prn.a1554_rating) AS "prn.a1554_rating",
dense_rank() OVER (ORDER BY (sum(prn.a1554_rating)) DESC) AS
"prn.a1554_rating_rank",
sum(prn.a1564_rating) AS "prn.a1564_rating",
dense_rank() OVER (ORDER BY (sum(prn.a1564_rating)) DESC) AS
"prn.a1564_rating_rank",
sum(prn.a15plus_rating) AS "prn.a15plus_rating",
dense_rank() OVER (ORDER BY (sum(prn.a15plus_rating)) DESC) AS
"prn.a15plus_rating_rank",
sum(prn.a1820_rating) AS "prn.a1820_rating",
dense_rank() OVER (ORDER BY (sum(prn.a1820_rating)) DESC) AS
"prn.a1820_rating_rank",
sum(prn.a1824_rating) AS "prn.a1824_rating",
dense_rank() OVER (ORDER BY (sum(prn.a1824_rating)) DESC) AS
"prn.a1824_rating_rank",
sum(prn.a1834_rating) AS "prn.a1834_rating",
dense_rank() OVER (ORDER BY (sum(prn.a1834_rating)) DESC) AS "prn.a1834_rating_rank",
sum(prn.a1849_rating) AS "prn.a1849_rating",
dense_rank() OVER (ORDER BY (sum(prn.a1849_rating)) DESC) AS "prn.a1849_rating_rank",
sum(prn.a1854_rating) AS "prn.a1854_rating",
dense_rank() OVER (ORDER BY (sum(prn.a1854_rating)) DESC) AS "prn.a1854_rating_rank",
sum(prn.a1864_rating) AS "prn.a1864_rating",
dense_rank() OVER (ORDER BY (sum(prn.a1864_rating)) DESC) AS "prn.a1864_rating_rank",
sum(prn.a18plus_rating) AS "prn.a18plus_rating",
dense_rank() OVER (ORDER BY (sum(prn.a18plus_rating)) DESC) AS "prn.a18plus_rating_rank",
sum(prn.a2124_rating) AS "prn.a2124_rating",
dense_rank() OVER (ORDER BY (sum(prn.a2124_rating)) DESC) AS "prn.a2124_rating_rank",
sum(prn.a2134_rating) AS "prn.a2134_rating",
dense_rank() OVER (ORDER BY (sum(prn.a2134_rating)) DESC) AS "prn.a2134_rating_rank",
sum(prn.a2149_rating) AS "prn.a2149_rating",
dense_rank() OVER (ORDER BY (sum(prn.a2149_rating)) DESC) AS "prn.a2149_rating_rank",
sum(prn.a2154_rating) AS "prn.a2154_rating",
dense_rank() OVER (ORDER BY (sum(prn.a2154_rating)) DESC) AS "prn.a2154_rating_rank",
sum(prn.a2164_rating) AS "prn.a2164_rating",
dense_rank() OVER (ORDER BY (sum(prn.a2164_rating)) DESC) AS "prn.a2164_rating_rank",
sum(prn.a21plus_rating) AS "prn.a21plus_rating",
dense_rank() OVER (ORDER BY (sum(prn.a21plus_rating)) DESC) AS "prn.a21plus_rating_rank",
sum(prn.a2534_rating) AS "prn.a2534_rating",
dense_rank() OVER (ORDER BY (sum(prn.a2534_rating)) DESC) AS "prn.a2534_rating_rank",
sum(prn.a2549_rating) AS "prn.a2549_rating",
dense_rank() OVER (ORDER BY (sum(prn.a2549_rating)) DESC) AS "prn.a2549_rating_rank",
sum(prn.a2554_rating) AS "prn.a2554_rating",
dense_rank() OVER (ORDER BY (sum(prn.a2554_rating)) DESC) AS "prn.a2554_rating_rank",
sum(prn.a2564_rating) AS "prn.a2564_rating",
dense_rank() OVER (ORDER BY (sum(prn.a2564_rating)) DESC) AS "prn.a2564_rating_rank",
sum(prn.a25plus_rating) AS "prn.a25plus_rating",
dense_rank() OVER (ORDER BY (sum(prn.a25plus_rating)) DESC) AS "prn.a25plus_rating_rank",
sum(prn.a3549_rating) AS "prn.a3549_rating",
dense_rank() OVER (ORDER BY (sum(prn.a3549_rating)) DESC) AS "prn.a3549_rating_rank",
sum(prn.a3554_rating) AS "prn.a3554_rating",
dense_rank() OVER (ORDER BY (sum(prn.a3554_rating)) DESC) AS "prn.a3554_rating_rank",
sum(prn.a3564_rating) AS "prn.a3564_rating",
dense_rank() OVER (ORDER BY (sum(prn.a3564_rating)) DESC) AS "prn.a3564_rating_rank",
sum(prn.a35plus_rating) AS "prn.a35plus_rating",
dense_rank() OVER (ORDER BY (sum(prn.a35plus_rating)) DESC) AS "prn.a35plus_rating_rank",
sum(prn.a5054_rating) AS "prn.a5054_rating",
dense_rank() OVER (ORDER BY (sum(prn.a5054_rating)) DESC) AS "prn.a5054_rating_rank",
sum(prn.a5064_rating) AS "prn.a5064_rating",
dense_rank() OVER (ORDER BY (sum(prn.a5064_rating)) DESC) AS "prn.a5064_rating_rank",
sum(prn.a50plus_rating) AS "prn.a50plus_rating",
dense_rank() OVER (ORDER BY (sum(prn.a50plus_rating)) DESC) AS "prn.a50plus_rating_rank",
sum(prn.a5564_rating) AS "prn.a5564_rating",
dense_rank() OVER (ORDER BY (sum(prn.a5564_rating)) DESC) AS "prn.a5564_rating_rank",
sum(prn.a55plus_rating) AS "prn.a55plus_rating",
dense_rank() OVER (ORDER BY (sum(prn.a55plus_rating)) DESC) AS "prn.a55plus_rating_rank",
sum(prn.a65plus_rating) AS "prn.a65plus_rating",
dense_rank() OVER (ORDER BY (sum(prn.a65plus_rating)) DESC) AS "prn.a65plus_rating_rank",
sum(prn.c211_rating) AS "prn.c211_rating",
dense_rank() OVER (ORDER BY (sum(prn.c211_rating)) DESC) AS "prn.c211_rating_rank",
sum(prn.c25_rating) AS "prn.c25_rating",
dense_rank() OVER (ORDER BY (sum(prn.c25_rating)) DESC) AS "prn.c25_rating_rank",
sum(prn.c611_rating) AS "prn.c611_rating",
dense_rank() OVER (ORDER BY (sum(prn.c611_rating)) DESC) AS "prn.c611_rating_rank",
sum(prn.f1214_rating) AS "prn.f1214_rating",
dense_rank() OVER (ORDER BY (sum(prn.f1214_rating)) DESC) AS "prn.f1214_rating_rank",
sum(prn.f1217_rating) AS "prn.f1217_rating",
dense_rank() OVER (ORDER BY (sum(prn.f1217_rating)) DESC) AS "prn.f1217_rating_rank",
sum(prn.f1220_rating) AS "prn.f1220_rating",
dense_rank() OVER (ORDER BY (sum(prn.f1220_rating)) DESC) AS "prn.f1220_rating_rank",
sum(prn.f1224_rating) AS "prn.f1224_rating",
dense_rank() OVER (ORDER BY (sum(prn.f1224_rating)) DESC) AS "prn.f1224_rating_rank",
sum(prn.f1234_rating) AS "prn.f1234_rating",
dense_rank() OVER (ORDER BY (sum(prn.f1234_rating)) DESC) AS "prn.f1234_rating_rank",
sum(prn.f1249_rating) AS "prn.f1249_rating",
dense_rank() OVER (ORDER BY (sum(prn.f1249_rating)) DESC) AS "prn.f1249_rating_rank",
sum(prn.f1254_rating) AS "prn.f1254_rating",
dense_rank() OVER (ORDER BY (sum(prn.f1254_rating)) DESC) AS "prn.f1254_rating_rank",
sum(prn.f1264_rating) AS "prn.f1264_rating",
dense_rank() OVER (ORDER BY (sum(prn.f1264_rating)) DESC) AS "prn.f1264_rating_rank",
sum(prn.f12plus_rating) AS "prn.f12plus_rating",
dense_rank() OVER (ORDER BY (sum(prn.f12plus_rating)) DESC) AS "prn.f12plus_rating_rank",
sum(prn.f1517_rating) AS "prn.f1517_rating",
dense_rank() OVER (ORDER BY (sum(prn.f1517_rating)) DESC) AS "prn.f1517_rating_rank",
sum(prn.f1520_rating) AS "prn.f1520_rating",
dense_rank() OVER (ORDER BY (sum(prn.f1520_rating)) DESC) AS "prn.f1520_rating_rank",
sum(prn.f1524_rating) AS "prn.f1524_rating",
dense_rank() OVER (ORDER BY (sum(prn.f1524_rating)) DESC) AS "prn.f1524_rating_rank",
sum(prn.f1534_rating) AS "prn.f1534_rating",
dense_rank() OVER (ORDER BY (sum(prn.f1534_rating)) DESC) AS "prn.f1534_rating_rank",
sum(prn.f1549_rating) AS "prn.f1549_rating",
dense_rank() OVER (ORDER BY (sum(prn.f1549_rating)) DESC) AS "prn.f1549_rating_rank",
sum(prn.f1554_rating) AS "prn.f1554_rating",
dense_rank() OVER (ORDER BY (sum(prn.f1554_rating)) DESC) AS "prn.f1554_rating_rank",
sum(prn.f1564_rating) AS "prn.f1564_rating",
dense_rank() OVER (ORDER BY (sum(prn.f1564_rating)) DESC) AS "prn.f1564_rating_rank",
sum(prn.f15plus_rating) AS "prn.f15plus_rating",
dense_rank() OVER (ORDER BY (sum(prn.f15plus_rating)) DESC) AS "prn.f15plus_rating_rank",
sum(prn.f1820_rating) AS "prn.f1820_rating",
dense_rank() OVER (ORDER BY (sum(prn.f1820_rating)) DESC) AS "prn.f1820_rating_rank",
sum(prn.f1824_rating) AS "prn.f1824_rating",
dense_rank() OVER (ORDER BY (sum(prn.f1824_rating)) DESC) AS "prn.f1824_rating_rank",
sum(prn.f1834_rating) AS "prn.f1834_rating",
dense_rank() OVER (ORDER BY (sum(prn.f1834_rating)) DESC) AS "prn.f1834_rating_rank",
sum(prn.f1849_rating) AS "prn.f1849_rating",
dense_rank() OVER (ORDER BY (sum(prn.f1849_rating)) DESC) AS "prn.f1849_rating_rank",
sum(prn.f1854_rating) AS "prn.f1854_rating",
dense_rank() OVER (ORDER BY (sum(prn.f1854_rating)) DESC) AS "prn.f1854_rating_rank",
sum(prn.f1864_rating) AS "prn.f1864_rating",
dense_rank() OVER (ORDER BY (sum(prn.f1864_rating)) DESC) AS "prn.f1864_rating_rank",
sum(prn.f18plus_rating) AS "prn.f18plus_rating",
dense_rank() OVER (ORDER BY (sum(prn.f18plus_rating)) DESC) AS "prn.f18plus_rating_rank",
sum(prn.f2124_rating) AS "prn.f2124_rating",
dense_rank() OVER (ORDER BY (sum(prn.f2124_rating)) DESC) AS "prn.f2124_rating_rank",
sum(prn.f2134_rating) AS "prn.f2134_rating",
dense_rank() OVER (ORDER BY (sum(prn.f2134_rating)) DESC) AS "prn.f2134_rating_rank",
sum(prn.f2149_rating) AS "prn.f2149_rating",
dense_rank() OVER (ORDER BY (sum(prn.f2149_rating)) DESC) AS "prn.f2149_rating_rank",
sum(prn.f2154_rating) AS "prn.f2154_rating",
dense_rank() OVER (ORDER BY (sum(prn.f2154_rating)) DESC) AS "prn.f2154_rating_rank",
sum(prn.f2164_rating) AS "prn.f2164_rating",
dense_rank() OVER (ORDER BY (sum(prn.f2164_rating)) DESC) AS "prn.f2164_rating_rank",
sum(prn.f21plus_rating) AS "prn.f21plus_rating",
dense_rank() OVER (ORDER BY (sum(prn.f21plus_rating)) DESC) AS "prn.f21plus_rating_rank",
sum(prn.f2534_rating) AS "prn.f2534_rating",
dense_rank() OVER (ORDER BY (sum(prn.f2534_rating)) DESC) AS "prn.f2534_rating_rank",
sum(prn.f2549_rating) AS "prn.f2549_rating",
dense_rank() OVER (ORDER BY (sum(prn.f2549_rating)) DESC) AS "prn.f2549_rating_rank",
sum(prn.f2554_rating) AS "prn.f2554_rating",
dense_rank() OVER (ORDER BY (sum(prn.f2554_rating)) DESC) AS "prn.f2554_rating_rank",
sum(prn.f2564_rating) AS "prn.f2564_rating",
dense_rank() OVER (ORDER BY (sum(prn.f2564_rating)) DESC) AS "prn.f2564_rating_rank",
sum(prn.f25plus_rating) AS "prn.f25plus_rating",
dense_rank() OVER (ORDER BY (sum(prn.f25plus_rating)) DESC) AS "prn.f25plus_rating_rank",
sum(prn.f3549_rating) AS "prn.f3549_rating",
dense_rank() OVER (ORDER BY (sum(prn.f3549_rating)) DESC) AS "prn.f3549_rating_rank",
sum(prn.f3554_rating) AS "prn.f3554_rating",
dense_rank() OVER (ORDER BY (sum(prn.f3554_rating)) DESC) AS "prn.f3554_rating_rank",
sum(prn.f3564_rating) AS "prn.f3564_rating",
dense_rank() OVER (ORDER BY (sum(prn.f3564_rating)) DESC) AS "prn.f3564_rating_rank",
sum(prn.f35plus_rating) AS "prn.f35plus_rating",
dense_rank() OVER (ORDER BY (sum(prn.f35plus_rating)) DESC) AS "prn.f35plus_rating_rank",
sum(prn.f5054_rating) AS "prn.f5054_rating",
dense_rank() OVER (ORDER BY (sum(prn.f5054_rating)) DESC) AS "prn.f5054_rating_rank",
sum(prn.f5064_rating) AS "prn.f5064_rating",
dense_rank() OVER (ORDER BY (sum(prn.f5064_rating)) DESC) AS "prn.f5064_rating_rank",
sum(prn.f50plus_rating) AS "prn.f50plus_rating",
dense_rank() OVER (ORDER BY (sum(prn.f50plus_rating)) DESC) AS "prn.f50plus_rating_rank",
sum(prn.f5564_rating) AS "prn.f5564_rating",
dense_rank() OVER (ORDER BY (sum(prn.f5564_rating)) DESC) AS "prn.f5564_rating_rank",
sum(prn.f55plus_rating) AS "prn.f55plus_rating",
dense_rank() OVER (ORDER BY (sum(prn.f55plus_rating)) DESC) AS "prn.f55plus_rating_rank",
sum(prn.f65plus_rating) AS "prn.f65plus_rating",
dense_rank() OVER (ORDER BY (sum(prn.f65plus_rating)) DESC) AS "prn.f65plus_rating_rank",
sum(prn.hh_rating) AS "prn.hh_rating",
dense_rank() OVER (ORDER BY (sum(prn.hh_rating)) DESC) AS "prn.hh_rating_rank",
sum(prn.m1214_rating) AS "prn.m1214_rating",
dense_rank() OVER (ORDER BY (sum(prn.m1214_rating)) DESC) AS "prn.m1214_rating_rank",
sum(prn.m1217_rating) AS "prn.m1217_rating",
dense_rank() OVER (ORDER BY (sum(prn.m1217_rating)) DESC) AS "prn.m1217_rating_rank",
sum(prn.m1220_rating) AS "prn.m1220_rating",
dense_rank() OVER (ORDER BY (sum(prn.m1220_rating)) DESC) AS "prn.m1220_rating_rank",
sum(prn.m1224_rating) AS "prn.m1224_rating",
dense_rank() OVER (ORDER BY (sum(prn.m1224_rating)) DESC) AS "prn.m1224_rating_rank",
sum(prn.m1234_rating) AS "prn.m1234_rating",
sum(prn.m1249_rating) AS "prn.m1249_rating",
dense_rank() OVER (ORDER BY (sum(prn.m1249_rating)) DESC) AS "prn.m1249_rating_rank",
sum(prn.m1254_rating) AS "prn.m1254_rating",
dense_rank() OVER (ORDER BY (sum(prn.m1254_rating)) DESC) AS "prn.m1254_rating_rank",
sum(prn.m1264_rating) AS "prn.m1264_rating",
dense_rank() OVER (ORDER BY (sum(prn.m1264_rating)) DESC) AS "prn.m1264_rating_rank",
sum(prn.m12plus_rating) AS "prn.m12plus_rating",
dense_rank() OVER (ORDER BY (sum(prn.m12plus_rating)) DESC) AS "prn.m12plus_rating_rank",
sum(prn.m1517_rating) AS "prn.m1517_rating",
dense_rank() OVER (ORDER BY (sum(prn.m1517_rating)) DESC) AS "prn.m1517_rating_rank",
sum(prn.m1520_rating) AS "prn.m1520_rating",
dense_rank() OVER (ORDER BY (sum(prn.m1520_rating)) DESC) AS "prn.m1520_rating_rank",
sum(prn.m1524_rating) AS "prn.m1524_rating",
dense_rank() OVER (ORDER BY (sum(prn.m1524_rating)) DESC) AS "prn.m1524_rating_rank",
sum(prn.m1534_rating) AS "prn.m1534_rating",
dense_rank() OVER (ORDER BY (sum(prn.m1534_rating)) DESC) AS "prn.m1534_rating_rank",
sum(prn.m1549_rating) AS "prn.m1549_rating",
dense_rank() OVER (ORDER BY (sum(prn.m1549_rating)) DESC) AS "prn.m1549_rating_rank",
sum(prn.m1554_rating) AS "prn.m1554_rating",
dense_rank() OVER (ORDER BY (sum(prn.m1554_rating)) DESC) AS "prn.m1554_rating_rank",
sum(prn.m1564_rating) AS "prn.m1564_rating",
dense_rank() OVER (ORDER BY (sum(prn.m1564_rating)) DESC) AS "prn.m1564_rating_rank",
sum(prn.m15plus_rating) AS "prn.m15plus_rating",
dense_rank() OVER (ORDER BY (sum(prn.m15plus_rating)) DESC) AS "prn.m15plus_rating_rank",
sum(prn.m1820_rating) AS "prn.m1820_rating",
dense_rank() OVER (ORDER BY (sum(prn.m1820_rating)) DESC) AS "prn.m1820_rating_rank",
sum(prn.m1824_rating) AS "prn.m1824_rating",
dense_rank() OVER (ORDER BY (sum(prn.m1824_rating)) DESC) AS "prn.m1824_rating_rank",
sum(prn.m1834_rating) AS "prn.m1834_rating",
sum(prn.m1849_rating) AS "prn.m1849_rating",
dense_rank() OVER (ORDER BY (sum(prn.m1849_rating)) DESC) AS "prn.m1849_rating_rank",
sum(prn.m1854_rating) AS "prn.m1854_rating",
dense_rank() OVER (ORDER BY (sum(prn.m1854_rating)) DESC) AS "prn.m1854_rating_rank",
sum(prn.m1864_rating) AS "prn.m1864_rating",
dense_rank() OVER (ORDER BY (sum(prn.m1864_rating)) DESC) AS "prn.m1864_rating_rank",
sum(prn.m18plus_rating) AS "prn.m18plus_rating",
dense_rank() OVER (ORDER BY (sum(prn.m18plus_rating)) DESC) AS "prn.m18plus_rating_rank",
sum(prn.m2124_rating) AS "prn.m2124_rating",
dense_rank() OVER (ORDER BY (sum(prn.m2124_rating)) DESC) AS "prn.m2124_rating_rank",
sum(prn.m2134_rating) AS "prn.m2134_rating",
dense_rank() OVER (ORDER BY (sum(prn.m2134_rating)) DESC) AS "prn.m2134_rating_rank",
sum(prn.m2149_rating) AS "prn.m2149_rating",
dense_rank() OVER (ORDER BY (sum(prn.m2149_rating)) DESC) AS "prn.m2149_rating_rank",
sum(prn.m2154_rating) AS "prn.m2154_rating",
dense_rank() OVER (ORDER BY (sum(prn.m2154_rating)) DESC) AS "prn.m2154_rating_rank",
sum(prn.m2164_rating) AS "prn.m2164_rating",
dense_rank() OVER (ORDER BY (sum(prn.m2164_rating)) DESC) AS "prn.m2164_rating_rank",
sum(prn.m21plus_rating) AS "prn.m21plus_rating",
dense_rank() OVER (ORDER BY (sum(prn.m21plus_rating)) DESC) AS "prn.m21plus_rating_rank",
sum(prn.m2534_rating) AS "prn.m2534_rating",
dense_rank() OVER (ORDER BY (sum(prn.m2534_rating)) DESC) AS "prn.m2534_rating_rank",
sum(prn.m2549_rating) AS "prn.m2549_rating",
dense_rank() OVER (ORDER BY (sum(prn.m2549_rating)) DESC) AS "prn.m2549_rating_rank",
sum(prn.m2554_rating) AS "prn.m2554_rating",
dense_rank() OVER (ORDER BY (sum(prn.m2554_rating)) DESC) AS "prn.m2554_rating_rank",
sum(prn.m2564_rating) AS "prn.m2564_rating",
dense_rank() OVER (ORDER BY (sum(prn.m2564_rating)) DESC) AS "prn.m2564_rating_rank",
sum(prn.m25plus_rating) AS "prn.m25plus_rating",
dense_rank() OVER (ORDER BY (sum(prn.m25plus_rating)) DESC) AS "prn.m25plus_rating_rank",
sum(prn.m3549_rating) AS "prn.m3549_rating",
dense_rank() OVER (ORDER BY (sum(prn.m3549_rating)) DESC) AS "prn.m3549_rating_rank",
sum(prn.m3554_rating) AS "prn.m3554_rating",
dense_rank() OVER (ORDER BY (sum(prn.m3554_rating)) DESC) AS "prn.m3554_rating_rank",
sum(prn.m3564_rating) AS "prn.m3564_rating",
dense_rank() OVER (ORDER BY (sum(prn.m3564_rating)) DESC) AS "prn.m3564_rating_rank",
sum(prn.m35plus_rating) AS "prn.m35plus_rating",
dense_rank() OVER (ORDER BY (sum(prn.m35plus_rating)) DESC) AS "prn.m35plus_rating_rank",
sum(prn.m5054_rating) AS "prn.m5054_rating",
dense_rank() OVER (ORDER BY (sum(prn.m5054_rating)) DESC) AS "prn.m5054_rating_rank",
sum(prn.m5064_rating) AS "prn.m5064_rating",
dense_rank() OVER (ORDER BY (sum(prn.m5064_rating)) DESC) AS "prn.m5064_rating_rank",
sum(prn.m50plus_rating) AS "prn.m50plus_rating",
dense_rank() OVER (ORDER BY (sum(prn.m50plus_rating)) DESC) AS "prn.m50plus_rating_rank",
sum(prn.m5564_rating) AS "prn.m5564_rating",
dense_rank() OVER (ORDER BY (sum(prn.m5564_rating)) DESC) AS "prn.m5564_rating_rank",
sum(prn.m55plus_rating) AS "prn.m55plus_rating",
dense_rank() OVER (ORDER BY (sum(prn.m55plus_rating)) DESC) AS "prn.m55plus_rating_rank",
sum(prn.m65plus_rating) AS "prn.m65plus_rating"
FROM demoschema.fact_r_s_n AS prn
INNER JOIN demp.dim_bk AS dim_book ON prn.dim_book_id = dim_book.dim_book_id
INNER JOIN demoschema.dim_mark AS dim_market ON prn.market_code = dim_market.market_code and dim_market.provider='NIELSEN'
INNER JOIN demoschema.dim_stat AS dim_station ON prn.station_code = dim_station.station_code
AND prn.market_code = dim_station.market_code and dim_station.provider='NIELSEN'
INNER JOIN demoschema.dim_product AS dim_product ON prn.dim_product_id = dim_product.dim_product_id
WHERE ((dim_book.book_id IN ('5c515f8b9949bd3fb3756fd8', '5c5a9f609949bd276b662269', '5c503cca9949bd3cce6eb107', '5c53e8999949bd11fc70c91a',
'5c6275de9949bd22a1261b39', '5c516af09949bd3fb3756fdf', '5c503d239949bd3cce6eb108', '5c5290439949bd69392c416d', '5c62abeaff96879c94284c02',
'5c514baf9949bd3fb3756fce', '5c62b712ff96878660bf4568', '5c515400aa760f3ba803119f', '5c61e9fc9949bd04eaa7c441', '5c61a1159949bd04eaa7c43f',
'5c5d2c679949bd2eba645214', '5c5b02559949bd75b4ac037a', '5c5d33e99949bd2eba645217', '5c5c07439949bd75b4ac039f', '5c750b569949bd2c475b18b7',
'5c62b4faff96878660bf454a')))
GROUP BY 1,2,3,4,5,6,7,8
ORDER BY 11 ,1 ,2 ,3 ,4 ,6 ,7 ,8
LIMIT 5000`