查询 sql 期望可以使用前缀索引,但是 profile 结果中 ShortKeyFilterRows 的值为 0

【详述】
查询表的建表语句为

CREATE TABLE ads_autopilot_os_all_event_case_report_daily_order_1
(
case_id VARCHAR(30) ,
event_name VARCHAR(200) ,
case_first_date date,
relative_day int,
event_date date,
count bigint,
sum double,
unique bigint )
PARTITION BY(event_date)
DISTRIBUTED BY HASH(case_id)
ORDER BY(case_id)

sql 查询语句为:select * from ads_autopilot_os_all_event_case_report_daily_order_1 where event_date between date ‘2023-10-01’ and date ‘2025-06-30’ and case_id = ‘case-8kkwcl1bd’ and case_first_date between ‘2023-10-01’ and ‘2024-08-15’ and relative_day between 0 and 319 and event_name = ‘active’ order by case_first_date, relative_day;

我另外创建一个表,采用如下的建表语句
CREATE TABLE ads_autopilot_os_all_event_case_report_daily (
case_id varchar(30),
event_name varchar(200),
case_first_date varchar(10),
relative_day int,
event_date date,
count bigint,
sum double,
unique bigint
)
DUPLICATE KEY (case_id, event_name, case_first_date, relative_day)
PARTITION BY (event_date)
DISTRIBUTED BY HASH(case_id)
使用同样的 sql 从这个表查询,profile 结果中 ShortKeyFilterRows 值就为 2,969,832,151。

而且从查询性能上,从 ads_autopilot_os_all_event_case_report_daily_order_1 查询的性能和 ads_autopilot_os_all_event_case_report_daily 并没有太大差异,这是为啥呢?

【业务影响】无
【是否存算分离】是存算分离
【StarRocks版本】3.3.3
【集群规模】1fe ( 700m CPU, 4Gi 内存)+ 1cn(3000m CPU, 10GI 内存), k8s 部署
【联系方式】never_wencan@163.com
【附件】
profile_from_ ads_autopilot_os_all_event_case_report_daily_order_1.txt (24.3 KB)
profiiel_from_ ads_autopilot_os_all_event_case_report_daily.txt (24.1 KB)
explain_from_ads_autopilot_os_all_event_case_report_daily_order_1.txt (23.3 KB)
explain_from_ads_autopilot_os_all_event_case_report_daily.txt (32.6 KB)