drop table if exists wwx1249869.pr01_temp_p3_ntr_grid_new_w23063002__de; create table wwx1249869.pr01_temp_p3_ntr_grid_new_w23063002__de as select * from ( select a.*,b.mon_rank from wwx1249869.pr01_temp_p3_ntr_grid_new_w23063001__de a left join ( select month,row_number () over (order by month desc) as mon_rank from (select month from wwx1249869.pr01_temp_p3_ntr_grid_new_w23063001__de group by month) bb ) b using (month)) c where mon_rank>=1 and mon_rank<=1 /*参数化*/ 解析
时间: 2023-12-16 18:05:52 浏览: 305
create table
5星 · 资源好评率100%
这段代码是用于创建一个新的表 `pr01_temp_p3_ntr_grid_new_w23063002__de`,它是基于表 `pr01_temp_p3_ntr_grid_new_w23063001__de` 的数据进行操作的。
首先,使用 `left join` 将表 `pr01_temp_p3_ntr_grid_new_w23063001__de` 与一个子查询进行连接。这个子查询会计算每个月份的排名,并将结果命名为 `mon_rank`。
然后,外部查询会从连接结果中选择 `mon_rank` 在范围 1 到 1 之间的记录。这里的 `mon_rank` 是一个参数化的值,可以根据需要进行调整。
最后,选中的结果会被插入到新创建的表 `pr01_temp_p3_ntr_grid_new_w23063002__de` 中。
阅读全文