Hi, There seems to be a problem with sql parsing engine? please confirm
This Sql can work. SELECT T8_0.*, T8_0.Ieceb82a4498247aeb911ba59f82148f0 - T8_1.Ieceb82a4498247aeb911ba59f82148f0 AS D81e0286e9b9c404cb7cb04c0b92cd7c2, T8_2.Ieceb82a4498247aeb911ba59f82148f0 AS Dcc3b3deff3c043e8834b70b6f41f8009 FROM (SELECT KYLIN_SALES.PART_DT, KYLIN_SALES.SELLER_ID, SUM(KYLIN_SALES.PRICE) AS Ieceb82a4498247aeb911ba59f82148f0 FROM KYLIN_SALES INNER JOIN KYLIN_CAL_DT ON KYLIN_SALES.PART_DT = KYLIN_CAL_DT.CAL_DT WHERE PART_DT IN ('2012-01-01', '2012-01-02', '2012-01-03') GROUP BY KYLIN_SALES.PART_DT, KYLIN_SALES.SELLER_ID ) T8_0 JOIN KYLIN_CAL_DT ON T8_0.PART_DT = KYLIN_CAL_DT.CAL_DT LEFT JOIN (SELECT KYLIN_SALES.PART_DT, KYLIN_SALES.SELLER_ID, SUM(KYLIN_SALES.PRICE) AS Ieceb82a4498247aeb911ba59f82148f0 FROM KYLIN_SALES INNER JOIN KYLIN_CAL_DT ON KYLIN_SALES.PART_DT = KYLIN_CAL_DT.CAL_DT WHERE PART_DT IN ('2012-01-01', '2012-01-02', '2012-01-03') GROUP BY KYLIN_SALES.PART_DT, KYLIN_SALES.SELLER_ID ) T8_1 ON T8_1.PART_DT = KYLIN_CAL_DT.YEAR_BEG_DT AND T8_0.SELLER_ID = T8_1.SELLER_ID LEFT JOIN (SELECT KYLIN_SALES.PART_DT, KYLIN_SALES.SELLER_ID, SUM(KYLIN_SALES.PRICE) AS Ieceb82a4498247aeb911ba59f82148f0 FROM KYLIN_SALES INNER JOIN KYLIN_CAL_DT ON KYLIN_SALES.PART_DT = KYLIN_CAL_DT.CAL_DT WHERE PART_DT IN ('2012-01-01', '2012-01-02', '2012-01-03') GROUP BY KYLIN_SALES.PART_DT, KYLIN_SALES.SELLER_ID ) T8_2 ON T8_2.PART_DT = KYLIN_CAL_DT.MONTH_BEG_DT AND T8_0.SELLER_ID = T8_2.SELLER_ID but after add a aggregation condition (boldface) ,it run error. SELECT PART_DT, SUM(D81e0286e9b9c404cb7cb04c0b92cd7c2) FROM (SELECT T8_0.*, T8_0.Ieceb82a4498247aeb911ba59f82148f0 - T8_1.Ieceb82a4498247aeb911ba59f82148f0 AS D81e0286e9b9c404cb7cb04c0b92cd7c2, T8_2.Ieceb82a4498247aeb911ba59f82148f0 AS Dcc3b3deff3c043e8834b70b6f41f8009 FROM (SELECT KYLIN_SALES.PART_DT, KYLIN_SALES.SELLER_ID, SUM(KYLIN_SALES.PRICE) AS Ieceb82a4498247aeb911ba59f82148f0 FROM KYLIN_SALES INNER JOIN KYLIN_CAL_DT ON KYLIN_SALES.PART_DT = KYLIN_CAL_DT.CAL_DT WHERE PART_DT IN ('2012-01-01', '2012-01-02', '2012-01-03') GROUP BY KYLIN_SALES.PART_DT, KYLIN_SALES.SELLER_ID ) T8_0 JOIN KYLIN_CAL_DT ON T8_0.PART_DT = KYLIN_CAL_DT.CAL_DT LEFT JOIN (SELECT KYLIN_SALES.PART_DT, KYLIN_SALES.SELLER_ID, SUM(KYLIN_SALES.PRICE) AS Ieceb82a4498247aeb911ba59f82148f0 FROM KYLIN_SALES INNER JOIN KYLIN_CAL_DT ON KYLIN_SALES.PART_DT = KYLIN_CAL_DT.CAL_DT WHERE PART_DT IN ('2012-01-01', '2012-01-02', '2012-01-03') GROUP BY KYLIN_SALES.PART_DT, KYLIN_SALES.SELLER_ID ) T8_1 ON T8_1.PART_DT = KYLIN_CAL_DT.YEAR_BEG_DT AND T8_0.SELLER_ID = T8_1.SELLER_ID LEFT JOIN (SELECT KYLIN_SALES.PART_DT, KYLIN_SALES.SELLER_ID, SUM(KYLIN_SALES.PRICE) AS Ieceb82a4498247aeb911ba59f82148f0 FROM KYLIN_SALES INNER JOIN KYLIN_CAL_DT ON KYLIN_SALES.PART_DT = KYLIN_CAL_DT.CAL_DT WHERE PART_DT IN ('2012-01-01', '2012-01-02', '2012-01-03') GROUP BY KYLIN_SALES.PART_DT, KYLIN_SALES.SELLER_ID ) T8_2 ON T8_2.PART_DT = KYLIN_CAL_DT.MONTH_BEG_DT AND T8_0.SELLER_ID = T8_2.SELLER_ID ) GROUP BY PART_DT error info: Error while executing SQL "SELECT PART_DT, SUM(D81e0286e9b9c404cb7cb04c0b92cd7c2) FROM (SELECT T8_0.*, T8_0.Ieceb82a4498247aeb911ba59f82148f0 - T8_1.Ieceb82a4498247aeb911ba59f82148f0 AS D81e0286e9b9c404cb7cb04c0b92cd7c2, T8_2.Ieceb82a4498247aeb911ba59f82148f0 AS Dcc3b3deff3c043e8834b70b6f41f8009 FROM (SELECT KYLIN_SALES.PART_DT, KYLIN_SALES.SELLER_ID, SUM(KYLIN_SALES.PRICE) AS Ieceb82a4498247aeb911ba59f82148f0 FROM KYLIN_SALES INNER JOIN KYLIN_CAL_DT ON KYLIN_SALES.PART_DT = KYLIN_CAL_DT.CAL_DT WHERE PART_DT IN ('2012-01-01', '2012-01-02', '2012-01-03') GROUP BY KYLIN_SALES.PART_DT, KYLIN_SALES.SELLER_ID ) T8_0 JOIN KYLIN_CAL_DT ON T8_0.PART_DT = KYLIN_CAL_DT.CAL_DT LEFT JOIN (SELECT KYLIN_SALES.PART_DT, KYLIN_SALES.SELLER_ID, SUM(KYLIN_SALES.PRICE) AS Ieceb82a4498247aeb911ba59f82148f0 FROM KYLIN_SALES INNER JOIN KYLIN_CAL_DT ON KYLIN_SALES.PART_DT = KYLIN_CAL_DT.CAL_DT WHERE PART_DT IN ('2012-01-01', '2012-01-02', '2012-01-03') GROUP BY KYLIN_SALES.PART_DT, KYLIN_SALES.SELLER_ID ) T8_1 ON T8_1.PART_DT = KYLIN_CAL_DT.YEAR_BEG_DT AND T8_0.SELLER_ID = T8_1.SELLER_ID LEFT JOIN (SELECT KYLIN_SALES.PART_DT, KYLIN_SALES.SELLER_ID, SUM(KYLIN_SALES.PRICE) AS Ieceb82a4498247aeb911ba59f82148f0 FROM KYLIN_SALES INNER JOIN KYLIN_CAL_DT ON KYLIN_SALES.PART_DT = KYLIN_CAL_DT.CAL_DT WHERE PART_DT IN ('2012-01-01', '2012-01-02', '2012-01-03') GROUP BY KYLIN_SALES.PART_DT, KYLIN_SALES.SELLER_ID ) T8_2 ON T8_2.PART_DT = KYLIN_CAL_DT.MONTH_BEG_DT AND T8_0.SELLER_ID = T8_2.SELLER_ID ) GROUP BY PART_DT LIMIT 50000": Can't find any realization. Please confirm with providers. SQL digest: fact table DEFAULT.KYLIN_CAL_DT,group by [DEFAULT.KYLIN_SALES.PART_DT],filter on [],with aggregates[FunctionDesc [expression=SUM, parameter=-($2, $9), returnType=null]]. apache_...@163.com