基于正则表达式更新 HIVE 上的查询

问题描述 投票:0回答:1

我有以下场景:

有一个 hive 表,其列如图所示

_id cdn_url
abc123 https://jjffkk.cloudfront.net/images/img1.png
xyz234 https://jjffkk.cloudfront.net/images/img2.png
pqr345 https://jjffkk.cloudfront.net/images/img3.png

我想更新与某些

cdn_url
相关的记录的
cdn_url
。还有一些空白 ('') 或 NULL 条目。

更新应将 CDN 域从

https://jjffkk.cloudfront.net
“替换”为新域,例如:
https://newcdnpattern.cloudfront.net
。对于所有相关条目,CDN 域之后的路径保持相同。

我可以在这里运行任何基于子字符串或正则表达式的更新查询吗?

提前致谢。

hive
1个回答
0
投票

鉴于您定位的 URL 前缀可能仅出现在 CDN URL 的开头,因此基本替换应该可行:

UPDATE yourTable
SET cdn_url = REPLACE(cdn_url,
                      'https://jjffkk.cloudfront.net',
                      'https://newcdnpattern.cloudfront.net);
© www.soinside.com 2019 - 2024. All rights reserved.