用配置单元中的一个单元替换特定字符的多个单元

chhkpiq4  于 2021-05-29  发布在  Hadoop
关注(0)|答案(1)|浏览(345)

我有一个数据集,其中的值是相同的,除了其中分号的数目导致不同的记录。
例如,如果在一列中有一个记录;b类;c和另一个记录有a;;b类;c、 这是禁止在我的代码中使用distinct函数。我希望这是作为重复的记录,其中;;需要替换为;
如何替换多个;有单根;在配置单元数据集中的字符串中?

qyzbxkaa

qyzbxkaa1#

你可以用 regexp_replace 如配置单元自定义项中所定义
第一个参数是需要更改的字符串。所以你可以在你的table上这样称呼它:

with t as 
   (SELECT "a\;\;\;b\;\;c\;d" as col ) 
SELECT regexp_replace(t.col, "\;+", "\;") as col from t

这应该给你的输出

+-------+
|    col|
+-------+
|a;b;c;d|
+-------+

相关问题