【详述】问题详细描述
两个明细表join建立异步刷新物化视图报错
明细表建表sql:
CREATE TABLE biz_diagnose_result_detail_tmp (
book_day date COMMENT ‘检查时间day yyyy-MM-dd’,
vid varchar(12),
id bigint ,
result_id bigint(18) DEFAULT NULL,
diagnose_result varchar(600) DEFAULT NULL,
diagnose_result_comm varchar(600) DEFAULT NULL,
question_type int(1) DEFAULT NULL,
check_time datetime DEFAULT NULL COMMENT ‘登记时间’,
book_time datetime DEFAULT NULL COMMENT ‘预约时间’
)
DUPLICATE KEY(book_day)
PARTITION BY RANGE (book_day) (
START (“2016-01-01”) END (“2023-12-31”) EVERY (INTERVAL 1 MONTH)
)
DISTRIBUTED BY HASH(vid) BUCKETS 8
PROPERTIES (
“replication_num” = “1”,
“in_memory” = “false”,
“storage_format” = “DEFAULT”,
“enable_persistent_index” = “false”
);
CREATE TABLE biz_reg_customer_tmp (
book_day date COMMENT ‘检查时间day yyyy-MM-dd’,
shop_no char(2) DEFAULT NULL COMMENT ‘门店编号’,
vid varchar(12) DEFAULT NULL COMMENT ‘体检流水号’,
id int(11) NOT NULL COMMENT ‘编号’,
cid varchar(12) DEFAULT NULL COMMENT ‘体检案例编号’,
name varchar(50) DEFAULT NULL COMMENT ‘姓名’,
sex varchar(2) DEFAULT NULL COMMENT '1:男 0:女 ',
birth_date datetime DEFAULT NULL COMMENT ‘出生日期’,
job varchar(20) DEFAULT NULL COMMENT ‘客户职业’,
job_industry varchar(20) DEFAULT NULL COMMENT ‘工作行业’,
book_time datetime DEFAULT NULL COMMENT ‘预约时间’,
book_person varchar(6) DEFAULT NULL COMMENT ‘预约登记人’,
book_reg_time datetime DEFAULT NULL COMMENT ‘预约登记时间’,
status char(1) DEFAULT NULL COMMENT ‘状态’,
other_reg_person varchar(6) DEFAULT NULL COMMENT ‘其他登记人’,
other_reg_time datetime DEFAULT NULL COMMENT ‘其他登记时间’,
body_check_time datetime DEFAULT NULL COMMENT ‘体检时间’,
body_check_org_time datetime DEFAULT NULL COMMENT ‘体检组织时间’,
member_type varchar(2) DEFAULT NULL COMMENT ‘会员类型’,
print_time datetime DEFAULT NULL COMMENT ‘打印时间’,
age int(3) DEFAULT NULL COMMENT ‘年龄’,
age_discrete int(1) DEFAULT NULL COMMENT ‘年龄离散化’,
clean_status char(1) DEFAULT NULL COMMENT ‘清洗状态:0:确认后数据、1:未能识别数据、2:机器识别数据’,
company_code varchar(20) DEFAULT NULL COMMENT ‘单位编码’,
department varchar(200) DEFAULT NULL COMMENT ‘部门’,
id_card varchar(50) DEFAULT NULL COMMENT ‘身份证号’,
clean_date datetime DEFAULT NULL COMMENT ‘清洗时间’,
INDEX sex_index (sex) USING BITMAP COMMENT ‘性别bitmap索引’
)
DUPLICATE KEY(book_day,shop_no)
PARTITION BY RANGE (book_day) (
START (“2016-01-01”) END (“2023-12-31”) EVERY (INTERVAL 1 MONTH)
)
DISTRIBUTED BY HASH(vid) BUCKETS 8
PROPERTIES (
“replication_num” = “1”,
“in_memory” = “false”,
“storage_format” = “DEFAULT”,
“enable_persistent_index” = “false”
);
物化视图创建sql:
CREATE MATERIALIZED VIEW customer_anyc1
DISTRIBUTED BY HASH(rc.shop_no) BUCKETS 5
REFRESH ASYNC START(‘2023-01-04 10:00:00’) EVERY (interval 1 hour)
AS
select
rc.book_day as bookDay,
rc.shop_no as shopNo,
dr.diagnose_result as diagnoseResult,
count( case when rc.age<18 then 1 end) as childCount,
count( case when rc.age between 18 and 50 then 1 end ) as youngCount,
count( case when rc.age > 50 then 1 end ) as oldCount,
bitmap_union(distinct rc.id_card) as diagnoseCount,
count(case when rc.sex =1 then 1 end ) as diagnoseManCount,
count(case when rc.sex =0 then 1 end ) as diagnoseWomenCount
from biz_diagnose_result_detail_tmp dr
left join biz_reg_customer_tmp rc
on rc.vid = dr.vid group by rc.book_day,rc.shop_no,dr.diagnose_result order by rc.book_day;
【背景】
【业务影响】
【StarRocks版本】 2.4.0
【集群规模】单机 1fe+1be
【附件】
- 查询报错:






