使用clickhouse分布式表上的where筛选器进行非重复选择失败

bnlyeluc  于 2021-07-15  发布在  ClickHouse
关注(0)|答案(0)|浏览(476)

在分布式表上测试查询时遇到问题。
sql是这样的:

select distinct OriginCityName from on_time.ontime_all t where t."OriginStateName" = 'California'

“on\u time.ontime\u all”是一个分布式表,包含列origincityname、originstatename和其他一些名称。错误是:

Received exception from server (version 1.1.54381):
Code: 171. DB::Exception: Received from localhost:9000, ::1. DB::Exception: Block structure mismatch in UNION stream: different number of columns:
OriginCityName String String(size = 0)
OriginCityName String String(size = 0), OriginStateName String String(size = 0). 

0 rows in set. Elapsed: 0.186 sec.

但是,如果对sql执行以下操作之一,则错误消失:
删除distinct
删除where子句
用prewhere替换where
将where子句中的“originstatename”列也添加到select部分
将“选择零件”更改为 select distinct * 这种sql对我的应用程序很重要,有人能帮我解决这个问题吗?它是一个bug还是clickhouse的一个限制?非常感谢你。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题