✅ 以下SQL执行出现一个难以理解的问题

以下的简单SQL是查询一个表中enddate最大的那条数据,按理来说如果子查询有结果那整个SQL就一定有结果。但是现在子查询有结果而整个SQL执行结果为空

以下是表的建表语句与SQL查询语句
CREATE TABLE lcpol (
polno varchar(20) NOT NULL,
contno varchar(20) NOT NULL,
mainpolno varchar(20) NULL,
enddate datetime NULL,
appflag char(1) NULL
) ENGINE=OLAP
UNIQUE KEY(polno)
COMMENT ‘olap’
DISTRIBUTED BY HASH(polno) BUCKETS 32
PROPERTIES (
“replication_allocation” = “tag.location.default: 3”,
“in_memory” = “false”,
“storage_format” = “V2”,
“disable_auto_compaction” = “false”
);

SELECT c.* from
icis.lcpol c
join (select contno, max(enddate) enddate
from icis.lcpol
where appflag != ‘9’
and polno = mainpolno
group by contno) ct on c.contno = ct.contno and c.enddate = ct.enddate

doris的版本是哪个?

这个子查询是作为一张表和 其他表join的,可以看下你的关联条件是否是有值的

是有值的,Doris升级个版本结果就出来了。

1.2.2吧,但是我们这个版本的Doris有个生产环境有个测试环境,生产是有结果的,测试就没有

建议升级最新的1.2.4试下