WholeStageCodegen (13)
  Sort [d_week_seq1]
    InputAdapter
      Exchange [d_week_seq1] #1
        WholeStageCodegen (12)
          Project [d_week_seq1,sun_sales1,sun_sales2,mon_sales1,mon_sales2,tue_sales1,tue_sales2,wed_sales1,wed_sales2,thu_sales1,thu_sales2,fri_sales1,fri_sales2,sat_sales1,sat_sales2]
            BroadcastHashJoin [d_week_seq1,d_week_seq2]
              Project [d_week_seq,sun_sales,mon_sales,tue_sales,wed_sales,thu_sales,fri_sales,sat_sales]
                BroadcastHashJoin [d_week_seq,d_week_seq]
                  HashAggregate [d_week_seq,sum,sum,sum,sum,sum,sum,sum] [sum(UnscaledValue(CASE WHEN (d_day_name = Sunday   ) THEN sales_price END)),sum(UnscaledValue(CASE WHEN (d_day_name = Monday   ) THEN sales_price END)),sum(UnscaledValue(CASE WHEN (d_day_name = Tuesday  ) THEN sales_price END)),sum(UnscaledValue(CASE WHEN (d_day_name = Wednesday) THEN sales_price END)),sum(UnscaledValue(CASE WHEN (d_day_name = Thursday ) THEN sales_price END)),sum(UnscaledValue(CASE WHEN (d_day_name = Friday   ) THEN sales_price END)),sum(UnscaledValue(CASE WHEN (d_day_name = Saturday ) THEN sales_price END)),sun_sales,mon_sales,tue_sales,wed_sales,thu_sales,fri_sales,sat_sales,sum,sum,sum,sum,sum,sum,sum]
                    InputAdapter
                      Exchange [d_week_seq] #2
                        WholeStageCodegen (4)
                          HashAggregate [d_week_seq,d_day_name,sales_price] [sum,sum,sum,sum,sum,sum,sum,sum,sum,sum,sum,sum,sum,sum]
                            Project [sales_price,d_week_seq,d_day_name]
                              BroadcastHashJoin [sold_date_sk,d_date_sk]
                                InputAdapter
                                  Union
                                    WholeStageCodegen (1)
                                      Project [ws_sold_date_sk,ws_ext_sales_price]
                                        ColumnarToRow
                                          InputAdapter
                                            Scan parquet spark_catalog.default.web_sales [ws_ext_sales_price,ws_sold_date_sk]
                                    WholeStageCodegen (2)
                                      Project [cs_sold_date_sk,cs_ext_sales_price]
                                        ColumnarToRow
                                          InputAdapter
                                            Scan parquet spark_catalog.default.catalog_sales [cs_ext_sales_price,cs_sold_date_sk]
                                InputAdapter
                                  BroadcastExchange #3
                                    WholeStageCodegen (3)
                                      Filter [d_date_sk,d_week_seq]
                                        ColumnarToRow
                                          InputAdapter
                                            Scan parquet spark_catalog.default.date_dim [d_date_sk,d_week_seq,d_day_name]
                  InputAdapter
                    BroadcastExchange #4
                      WholeStageCodegen (5)
                        Project [d_week_seq]
                          Filter [d_year,d_week_seq]
                            ColumnarToRow
                              InputAdapter
                                Scan parquet spark_catalog.default.date_dim [d_week_seq,d_year]
              InputAdapter
                BroadcastExchange #5
                  WholeStageCodegen (11)
                    Project [d_week_seq,sun_sales,mon_sales,tue_sales,wed_sales,thu_sales,fri_sales,sat_sales]
                      BroadcastHashJoin [d_week_seq,d_week_seq]
                        HashAggregate [d_week_seq,sum,sum,sum,sum,sum,sum,sum] [sum(UnscaledValue(CASE WHEN (d_day_name = Sunday   ) THEN sales_price END)),sum(UnscaledValue(CASE WHEN (d_day_name = Monday   ) THEN sales_price END)),sum(UnscaledValue(CASE WHEN (d_day_name = Tuesday  ) THEN sales_price END)),sum(UnscaledValue(CASE WHEN (d_day_name = Wednesday) THEN sales_price END)),sum(UnscaledValue(CASE WHEN (d_day_name = Thursday ) THEN sales_price END)),sum(UnscaledValue(CASE WHEN (d_day_name = Friday   ) THEN sales_price END)),sum(UnscaledValue(CASE WHEN (d_day_name = Saturday ) THEN sales_price END)),sun_sales,mon_sales,tue_sales,wed_sales,thu_sales,fri_sales,sat_sales,sum,sum,sum,sum,sum,sum,sum]
                          InputAdapter
                            ReusedExchange [d_week_seq,sum,sum,sum,sum,sum,sum,sum] #2
                        InputAdapter
                          BroadcastExchange #6
                            WholeStageCodegen (10)
                              Project [d_week_seq]
                                Filter [d_year,d_week_seq]
                                  ColumnarToRow
                                    InputAdapter
                                      Scan parquet spark_catalog.default.date_dim [d_week_seq,d_year]
