doris2.1.7,有一个insert into seclect 的定时任务每小时跑一次,不定什么时候就报错类型不匹配的问题(一天大概一两次)

Viewed 38

报错:invalid column(#4) type: doris::vectorized::ColumnVector, expect type: ColumnString, is nereids: false
at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:129)
但是第四列的park_id来源和目标表都是bigint类型的


insert into ods.ods_traffic_pickup_transaction
(id,thr_model,part_date,park_id,app_user_id,stop_type,car_type,arrive_ls,depark_ls,depark_time,arrears_pay,should_pay,
preferential,total_arrive)
select 
	md5(cast(depark_ls as varchar)) as id ,
	thr_model,
	part_date,
	CAST(park_id AS BIGINT) as park_id,
	app_user_id,
	stop_type,
	car_type,
	arrive_ls,
	depark_ls,
	depark_time,
	arrears_pay,
	should_pay,
	preferential,
	total_arrive
from (
	select 
			thr_model,
			part_date,
			park_id,
			app_user_id,
			stop_type,
			car_type,
			arrive_ls,
			depark_ls,
			DATE_FORMAT(STR_TO_DATE(depark_time, '%Y%m%d%H%i%s'), '%Y-%m-%d %H:%i:%s') as depark_time,
			arrears_pay,
			should_pay,
			preferential,
			total_arrive
	from stg.stg_traffic_pickup_transaction 
	where part_date >= DATE_SUB('$[this_day(yyyy-MM-dd)]', INTERVAL 30 DAY)  
	and depark_ls in (
		select 
			depark_ls
		from stg.stg_traffic_pickup_transaction
		where depark_ls <> 0
		and part_date >= DATE_SUB('$[this_day(yyyy-MM-dd)]', INTERVAL 30 DAY) 
		group by depark_ls 
		having count(1) = 1
	)
	union 
	select 
			thr_model,
			part_date,
			park_id,
			app_user_id,
			stop_type,
			car_type,
			arrive_ls,
			depark_ls,
			depark_time,
			(should_pay-preferential-total_arrive) as arrears_pay ,
			should_pay,
			preferential,
			total_arrive
		from 
			(select 
				
				thr_model,
				part_date,
				park_id,
				app_user_id,
				stop_type,
				car_type,
				arrive_ls,
				depark_ls,
				DATE_FORMAT(STR_TO_DATE(depark_time, '%Y%m%d%H%i%s'), '%Y-%m-%d %H:%i:%s') as depark_time,
				max(should_pay) over(partition by depark_ls) as should_pay,
				max(preferential) over(partition by depark_ls) as preferential,
				sum(total_arrive) over(partition by depark_ls) as total_arrive,
				row_number() over (partition by depark_ls order by str_to_date(depark_time,'%Y%m%d%H%i%s') desc) as rn
			from stg.stg_traffic_pickup_transaction 
			where part_date >= DATE_SUB('2025-05-12', INTERVAL 30 DAY)  
			and depark_ls in (
				select 
					depark_ls
				from stg.stg_traffic_pickup_transaction
				where part_date >= DATE_SUB('2025-05-12', INTERVAL 30 DAY) and depark_ls <> 0 
				group by depark_ls 
				having count(1) > 1)
			) a
	where rn = 1) tt

show create table

	CREATE TABLE `stg_traffic_pickup_transaction` (
  `jxkid` varchar(5000) NULL COMMENT 'jxkid',
  `part_date` varchar(5000) NULL COMMENT '分区日期',
  `thr_model` varchar(5000) NULL COMMENT 'thr_model',
  `park_id` bigint NULL COMMENT '站点编号',
  `app_user_id` varchar(5000) NULL COMMENT '用户编号,车主手机号',
  `stop_type` varchar(5000) NULL COMMENT '停车类型:01:临停, 02:包月, 03:免费',
  `car_type` varchar(5000) NULL COMMENT '车辆类型:01:小车,02:大车,03:加长车,07:中型车',
  `arrive_ls` bigint NULL COMMENT '停车流水,平台内唯一 PK',
  `depark_ls` bigint NULL COMMENT '取车流水,平台内唯一',
  `depark_user_id` varchar(5000) NULL COMMENT '操作员编号',
  `depark_user_name` varchar(5000) NULL COMMENT '操作员姓名',
  `depark_tml_id` varchar(5000) NULL COMMENT '取车工作站编号,出口编号',
  `depark_tml_name` varchar(5000) NULL COMMENT '取车工作站名称,出口描述',
  `depark_time` varchar(5000) NULL COMMENT '取车时间',
  `pay_flag` varchar(5000) NULL COMMENT '付费方式',
  `pay_depict` varchar(5000) NULL COMMENT '付费方式描述',
  `arrears_pay` double NULL COMMENT '欠费金额,分为单位',
  `should_pay` double NULL COMMENT '应收金额,分为单位',
  `preferential` double NULL COMMENT '优惠金额,分为单位',
  `total_arrive` double NULL COMMENT '实收金额,分为单位',
  `picture_file` varchar(5000) NULL COMMENT '照片相对路径',
  `description` varchar(5000) NULL COMMENT '描述',
  `thr_park_code` varchar(5000) NULL COMMENT '第三方停车场编号,无用',
  `pay_channel` varchar(5000) NULL COMMENT 'pay_channel',
  `upay_type` varchar(5000) NULL COMMENT 'upay_type',
  `repay_amount` double NULL COMMENT 'repay_amount',
  `thr_parkpot_code` varchar(5000) NULL COMMENT '第三方停车位编号,无用'
) ENGINE=OLAP
UNIQUE KEY(`jxkid`, `part_date`)
COMMENT 'stg_交通运输_停车场取车交易记录'
AUTO PARTITION BY LIST (`part_date`)
PARTITION p20242d032d0210 VALUES IN ("2024-03-02"),
PARTITION p2
0 Answers