我有一张表 A,其中包含 ID、姓名、年龄。
> id name age
> {20} Joan 12
> 3 James 12
> 12 Jill 12
> {54} Adam 12
> {10} Bill 12
我需要移除 {} 周围的“id”字段。 我试过这个:
translate(regexp_extract(id, '([^{])([^}])', 2), '{', '')
它有效,但对于没有 {} 的值返回 null。
id
3
12
有没有办法让我得到输出为???
id
20
3
12
54
10
最佳答案
您可以使用 regexp_replace udf 来删除“{}”,例如:
select regexp_replace(id, '\\{|\\}','');
关于hadoop - hive : Replace string/pattern in row if it exists else do nothing,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35494492/