我有两列,一列是描述,另一列中相应的标签是红移表
description | Tags
John Plays Football | name, Verb , object
我希望输出为带有标记
的描述John name plays verb football object
另外还有一个补充,就是有一个包含冒号的描述(:)我想在不删除的情况下将这些单词分开:
例如:
description | Tags
Des:John Plays Football | constant,name, Verb, object
Output
Des: constant John name plays verb football object
还需要排除:结肠两侧的数字规则,以确保时间(例如:10:10)分开
我不知道我将从哪里开始
答案 0 :(得分:0)
您已在Python中创建UDF以执行this。
示例代码
create function f_py_conc (a srting, b srting)
returns srting
stable
as $$
c=a.split(" ")
d=b.split(",")
e =""
for i in range(len(c))
d=c[i]+" " +d[i]
return e
$$ language plpythonu;
注意:Python依赖于空间,因此可能无法运行此代码,因为它可能需要进行一些更改。
答案 1 :(得分:0)
你可以使用Redshift函数实际实现这一点,特别是分割部分方法。我不确定这是否会解决:同时也可以这样做,然后回答你接下来要做的事情。 这个想法是建立一个连接字段,汇集两个字段的所有不同部分。您可以按如下方式执行此操作:
select description, tags,
SPLIT_PART(description, ' ', 1) + ' ' + SPLIT_PART(tags, ',', 1) + ' ' +
SPLIT_PART(description, ' ', 2) + ' ' + SPLIT_PART(tags, ',', 2) + ' ' +
SPLIT_PART(description, ' ', 3) + ' ' + SPLIT_PART(tags, ',', 3)
as description_with_tag
from table_name
详细了解此功能here