使用姿势不对导致,doris insert overwrite 不生效

  1. 先WITH 后 insert overwrite
    WITH mapper AS (

)
INSERT OVERWRITE TABLE
SELECT a,b,c from mapper

  1. 先insert overwrite 后 with
    INSERT OVERWRITE TABLE
    WITH mapper AS (

)
SELECT a,b,c FROM mapper

直接上1和2 两种情况理解应该是一样的,但是实际执行下来第1种并没有生效,排查了所有数据,发现查询出来是符合预期的,但是没有写入到表里面,后来发现 解析器读到WITH 判断是一个CTE,然后就开始按照查询去解析了,所以导致写入没有生效。当 解析到 insert overwrite table 的时候,会判断为DML 写入

posted @ 2026-07-05 18:05  Paualf  阅读(11)  评论(0)    收藏  举报