在ClickHouse中的特定索引处设置数组值

斯特列尼科夫列夫

是否可以在ClickHouse数据库的现有行中的特定索引处更新数组?就像是alter table mytable set arr[3]=8

丹尼·克兰(Denny Crane)
create table xxx(A Int64, Person Nested (Name String, value String))
Engine=MergeTree order by A;

insert into xxx values (1, ['a','b','c'], ['aaa','bbb','ccc'])

如果数组索引= 3,则名称='1'

alter table xxx update "Person.Name" = 
arrayMap( i-> if(i=3,'1',"Person.Name"[i]), arrayEnumerate("Person.Name")) where 1;

select *  from xxx;
┌─A─┬─Person.Name───┬─Person.value────────┐
│ 1 │ ['a','b','1'] │ ['aaa','bbb','ccc'] │
└───┴───────────────┴─────────────────────┘

如果name = a,则name = 1

alter table xxx update "Person.Name" = 
arrayMap( i-> if(i='a','1',i), "Person.Name") where 1;
    
select  * from xxx;
┌─A─┬─Person.Name───┬─Person.value────────┐
│ 1 │ ['1','b','c'] │ ['aaa','bbb','ccc'] │
└───┴───────────────┴─────────────────────┘

如果名称= c,则值= 333

alter table xxx update "Person.value" = 
arrayMap( (i,j) -> if(j='c','333', i), "Person.value", "Person.Name") where 1;

 select  * from xxx

┌─A─┬─Person.Name───┬─Person.value────────┐
│ 1 │ ['1','b','c'] │ ['aaa','bbb','333'] │
└───┴───────────────┴─────────────────────┘

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Linq选择特定索引处的数组值

替换特定索引处的值(数组)

如何比较数组中的项目并替换,以及如何在特定索引处设置索引?

在Ruby中的特定索引处合并数组

从索引数组中,创建这些索引处的值数组

在 Angular 5 中,在特定索引处的反应形式数组中插入值

多个子数组中特定索引处的值的总和/平均值-jQuery

如何使用jQuery在2d数组中的特定索引处插入值

Haskell:修改数组特定索引处的值

在特定索引处将值分配给数组

在Swift 5中从数组中删除特定索引处的对象

php中特定索引处的JSON未设置元素

在Java方法中的特定索引处使用数组

在React中的特定索引处将对象插入数组

如何在特定索引处更改数组中的元素?

在Python中的特定索引处修改多维数组

在空列表飞镖中的特定索引处插入值

使用索引在Java中设置数组的值

尝试在Javascript数组索引处设置单个值。它是质量分配值

如何在两个不同数组的特定索引处合并两个数组值

在numpy数组中获取特定值的索引

在特定索引处更改反应状态数组

JS在特定索引处插入数组

数组不会替换索引处的值

Javascript-在数组的索引-1处设置值应该怎么做?

JAVA:如何将数组中相同索引处的值相加到单个数组中

将哈希中的数据插入到Ruby中设置索引处的数组中

Javascript:在对象数组的特定索引处添加键和值

如何在反应中设置状态与数组中某个索引处的内容