Stream Load方式怎么更新部分列数据

1 {“order_id”:1, “order_state”:1, “total_price”:1, “__op”:0}

2 {“order_id”:2, “order_state”:3, “total_price”:1, “__op”:0}

3 {“order_id”:2, “order_state”:4, “__op”:0}

目标表列为order_id, order_state, total_price

__op为标记为upsert/delete方式

使用Stream Load的方式怎么让第3行的执行结果只修改order_state值,不会将total_price置为空?

(第3行它的行为是先delete然后insert导致原来total_price数据为空)



这是我的配置,已经开启了部分更新,但是第3行的执行还是导致原来的值置为空,难道说每一条数据的执行需要根据修改行为动态指定columns?

没太理解,部分列更新需要每次写入指定主键列和需要更新的列在columns中

意思是对于我 2 行的更新,我需要指定columns(order_id,order_state,total_price,__op)
对于我 3 行的更新,我需要指定columns(order_id,order_state,__op)

更新哪些列就需要在columns中指定主键和对应更新的列

请问楼主最终的解决方案是什么 :nerd_face: