presto/trino连接clickhouse 字符串问题_cannot apply operator: varchar <= date-程序员宅基地

技术标签: 分布式  大数据  

原因

当使用presto将clickhouse作为数据源进行查数据,如果其中有字符类型的话,比如说String或者FixString时,当我们对该字段进行筛选时,会报错  Cannot apply operator: varchar = varbinary ,意思是说 是二进制字符串和字符串类型进行等值操作。

通过查github,我们得知presto 对于clickhouse 数据源的话,对于字符串类型,presto 都会将其视为二进制字符串进行处理,所以我们进行字符串字段的操作需要将其对待为二进制字符处理

 

解决

  1. 通过to_utf8 将查询条件转化为二进制字符串类型,然后进行查询,该方法不建议使用,与代码耦合过于严重
  2. 配置参数。在clickhouse的catalog中配置 clickhouse.map-string-as-varchar=true。 对应问题的issue 在该链接下https://github.com/trinodb/trino/issues/7102 , 如果提示不支持该参数,需要查看自己用的trino版本,在358以后的版本都是支持该参数的
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_39158142/article/details/117791610

智能推荐

力扣练习第三十六天——最小栈_力扣 最小栈 js-程序员宅基地

文章浏览阅读98次。力扣练习第三十六天——最小栈题目大致如下:设计一个支持 push,pop,top 操作,并能在常数时间内检索到最小元素的栈。push(x) – 将元素 x 推入栈中。pop() – 删除栈顶的元素。top() – 获取栈顶元素。getMin() – 检索栈中的最小元素。示例:MinStack minStack = new MinStack();minStack.push(-2);..._力扣 最小栈 js

一个开源嵌入式USB设备协议栈:FelisUSB-程序员宅基地

文章浏览阅读564次,点赞28次,收藏10次。一个开源嵌入式USB设备协议栈:FelisUSB

vue3使用的移动端UI框架,vue3.0 ui组件库_vue3 移动端框架下载-程序员宅基地

文章浏览阅读1k次。Laydate控件如何只显示年份如下所示在下面加入css样式 便只显示年份了.laydate_m,.laydate_table{ display:none;} Laydate控件如何只显示时分秒#laydate_box.laydate_top,#laydate_box.laydate_table,#laydate_today{display:none;}当然都还需要对应修改下面的format$(document).ready(function(){laydate({elem:'#haha',//目标元素。_vue3 移动端框架下载

ubuntu桌面卡死_ubuntu 设置桌面 卡死-程序员宅基地

文章浏览阅读402次。ubuntu桌面卡死问题如何解决之前的操作就是关机、重启现在找到一种新的解决办法:切换到tty模式,执行pkill X;start X;即可补充一点:Ctrl+Atl+F3/F4/F5/F6 进入ttyCtrl+Atl+F2退出tty不过有一点:所有的进程都会被杀死,重新进来之后,啥都没有了,不过好像重启也会这样的。..._ubuntu 设置桌面 卡死

Java面向对象——多态 详解_son son=(parent) parent-程序员宅基地

文章浏览阅读279次。java基础**面向对象——多态** 来,此篇博客来看看Java面向对象最后一篇——多态,也是Java最简单的最后部分了。 这个多态呀。就是事物的多种形态,主要分为静多态和动多态多态 前提:不知道还记得继承和方法重写重载么。 体现:父类引用或者接口引用执行子类的对象。(就是基类的引用引用派生类的对象)我记..._son son=(parent) parent

python字符串类型_Python-数据类型-字符串-程序员宅基地

文章浏览阅读278次。数据类型-字符串字符串是 python最常见的基本数据类型之一,常见的定义方式是一对单引号( '……')或者一对双引号 ("……")创建,多行字符串也可使用三单引号或者三双引号定义。1. 特点不可变类型: 在元素定义之后不能对其进行修改,否则会报错可以进行切片和索引操作: 索引下标从零开始示例a = "hello world"b = 'hello python'print(type(a), typ..._name[:-4:-1]

随便推点

【Word】双栏论文尾页文字齐平排版的实现_文章最终的结尾处两栏的文字齐平排版-程序员宅基地

文章浏览阅读1.4w次,点赞19次,收藏34次。*以下方法以MS Office 2019 Word为平台实现为方便阅读或节省空间,许多论文采用双栏排版方式,同时要求最后一页左右栏文字的下端要平齐,如图(从《<机械工程学报>论文投稿模板》截得)。默认情况下,左栏文字写满后才会将新文字排到右栏,因此最后一页通常左右两栏底部不齐平的,如下图。解决办法很简单,直接在文章最后一个字的后面插入连续型分节符即可,如下图。效果如下:..._文章最终的结尾处两栏的文字齐平排版

[XSCTF]easyxor-程序员宅基地

文章浏览阅读245次。在这个循环里,将异或得到的结果每次减去1,同时在数组里写上1,往后遍历数组。查看,main函数,首先是将输入的数据与key中的字符依次异或。直到异或得到的结果减为0,在数组中写一个0进行标记。最后比较数组是否与r数组相同。_easyxor

NVIDIA DALI从入门到放弃之一:概述_nvidia dail-程序员宅基地

文章浏览阅读2.8k次,点赞3次,收藏19次。NVIDIA DALI从入门到放弃之一:概述NVIDIA DALI从入门到放弃之二:入门示例NVIDIA DALI从入门到放弃之三:Data LoadingNVIDIA DALI从入门到放弃之四:Multiple GPUNVIDIA DALI从入门到放弃之五:Image ProcessingNVIDIA DALI从入门到放弃之六:Geometric TransformsNVIDIA DALI从入门到放弃之七:Sequence ProcessingNVIDIA DALI从入门到放弃之八:PyTo_nvidia dail

csf的安装-程序员宅基地

文章浏览阅读165次。安装CSF 防火墙通常是我们在服务器上所做的第二件事。防火墙的主要目的是为了帮助完成如下任务:1 防止暴力破解密码,自动屏蔽连续登陆失败的IP2 管理网络端口,只开放必要的端口3 免疫小流量的 DDos 和 CC ***。(对于免疫这些的*** 个人感觉也就那么回事)CSF是一个功能完善的防火墙,并且提供 cPanel 插件,便于管理。当然除了 Web GUI..._如何安装csf包

CMake 使用_set( cmake_cxx_flags "${cmake_cxx_flags} -y_gpp")-程序员宅基地

文章浏览阅读1k次,点赞2次,收藏6次。CMake使用_set( cmake_cxx_flags "${cmake_cxx_flags} -y_gpp")

推荐文章

热门文章

相关标签