区别于具有ClickHouse分布式表的过滤器失败的选择

时间:2018-05-15 12:40:27

标签: database clickhouse

我在分布式表上测试查询时遇到了问题。

SQL是这样的:

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

' on_time.ontime_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执行以下操作之一,则错误消失:

  • 删除不同
  • 删除where子句
  • 替换在prewhere的位置
  • 添加&#34; OriginStateName&#34; <选择部分的where子句中的列
  • 将选择部分更改为select distinct *

这种SQL对我的应用程序很重要,所以有人可以帮我解决这个问题吗?它是一个bug还是ClickHouse的限制?非常感谢你。

0 个答案:

没有答案