clickhouse sql使用2

本文介绍了ClickHouse数据库中multiIf函数的使用方法,重点讲解了如何处理在计算过程中可能出现的NaN和Infinity异常,通过isNaN()和isInfinite()函数进行有效管理。
摘要由CSDN通过智能技术生成

1、多条件选择
multiIf(cond_1, then_1, cond_2, then_2, …, else)
select multiIf(true,0,1)
在这里插入图片描述
在这里插入图片描述
当第一条件不成立看第二条件判断
在这里插入图片描述
在这里插入图片描述
第一个参数条件参数,第二参数条件成立时走
2、clickhouse 在计算时候长出现NaN和Infinity异常处理
isNaN()和isInfinite()处理
在这里插入图片描述
3、empty(字段)
当字段有值时候 empty(字段)=0(字段有值empty函数判读是false所以值为0)
当字段无值时候 empty(字段)=1

4、case when 和multiIf转换
case 字段 when 值1 then ‘A’ when 值2 then ‘B’ else 字段 end
case when 字段=值1 then ‘A’ when 字段=值2 then ‘B’ else 字段 end
case when 字段 like ‘%A%’ then ‘A’ when 字段=值2 then ‘B’ else 字段 end
case 字段 when和case when 字段 case when 字段 可以处理模糊等相关查询case 字段 when不可以
case when 字段 like ‘%a%’ then ‘A’ when 字段=值2 then ‘B’ else 字段 end 转multiIf实现
multiIf(like(字段, ‘%a%’), ‘A’, equals(字段, ‘值2’), ‘B’, 字段)

ClickHouse是一个开源的列式数据库管理系统,专为大规模数据分析和实时查询而设计。它支持高性能的并行查询和数据压缩,适用于处理大量数据的场景。 在使用ClickHouse进行SQL查询时,可以按照以下步骤进行操作: 1. 创建表:使用CREATE TABLE语句创建一个新的表,可以指定表的名称、列的名称和数据类型,以及表的引擎类型。例如,可以使用以下命令创建一个名为table_from_file的表,并指定其列和引擎类型: \[1\] 2. 导入数据:使用INSERT INTO语句将数据导入到表中。可以使用INFILE关键字指定数据文件的路径和格式。例如,可以使用以下命令将数据从input.csv文件导入到table_from_file表中: \[1\] 3. 执行查询:使用SELECT语句从表中检索数据。可以使用FORMAT关键字指定查询结果的格式。例如,可以使用以下命令从table_from_file表中检索数据并以紧凑的格式显示: \[1\] 除了基本的查询操作,ClickHouse还支持许多其他功能,如聚合函数、分组、排序、过滤等。可以根据具体的需求使用相应的SQL语句来实现这些功能。 总结起来,使用ClickHouse进行SQL查询的一般步骤包括创建表、导入数据和执行查询。通过灵活的SQL语句和高性能的查询引擎,ClickHouse可以有效地处理大规模数据分析和实时查询的需求。 #### 引用[.reference_title] - *1* *2* *3* [ClickHouse SQL 操作语句详解](https://blog.csdn.net/leesinbad/article/details/129127536)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值