我正在使用已安装扩展工具包的netezza数据库。我是刚开始工作的人,我应该创建的脚本存在问题。
我的任务是能够识别列中是否包含特定数值,如果是,则将其替换为一行。
例如,如果值是“此字符串包含此限制值4402631524852147,并且需要屏蔽”,则我的脚本需要将这些更改更改为“此字符串包含此限制值********** ** 2147,它需要屏蔽”
我已经能够使用sqlext..regexpextract和sqleext..regexp_like来创建查询来标识值,但是我不知道如何替换行中的字符串。
查询,我曾经用来标识值:
SELECT ${COLUMN_NAME},'XXXXXXXXXXXXXXXX'||SUBSTR(${COLUMN_NAME},13,4) as
MASKED_ID
FROM ${TABLE_NAME}
WHERE sqlext..regexp_like(${COLUMN_NAME},'[0-9]{16}','I')
AND SUBSTR(sqlext..regexp_extract(${COLUMN_NAME},'[0-9]{16}','I'),1,6) in
('440263')
是否可以使用sqlext..regexp_replace?还是另一条要替换的SQL命令?
答案 0 :(得分:0)