Я работаю над базой данных 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 для замены в строке?