Snowflake SQL REGEXP函数将任何字段替换为字母或符号0 [重复]

5ssjco0h  于 2023-04-22  发布在  其他
关注(0)|答案(1)|浏览(141)

此问题已在此处有答案

Regular expression that Must have at least one letter(3个答案)
2天前关闭。
我在Matillion/Snowflake工作,在一些REGEXP函数上卡住了。我有一个varchar字段,其中包含一些包含字母和连字符的条目,并寻找一种方法使任何包含字母或连字符的字段为0。
任何帮助都是受欢迎的!在这件事上卡住了一段时间。
谢谢大家!
以下是我到目前为止所做的:

select SHIP_TO_CUSTOMER_NUMBER,
CASE
WHEN REGEXP_LIKE(SHIP_TO_CUSTOMER_NUMBER, '[a-zA-Z]*') THEN '0'
ELSE SHIP_TO_CUSTOMER_NUMBER
END as test_field
from sales_fact_m3;

到目前为止,它将任何只有字母的字段(如“XRIA”)转换为0,但仍有一个字段“HWL-WL 1”作为“HWL-WL 1”通过。
我以为上面的REGEXP_LIKE语句会将任何包含任何字母的字段转换为0,但我猜由于某种原因它并没有这样工作。

jq6vz3qz

jq6vz3qz1#

使用.[a-zA-Z]. 代替

  • 正如Markalex提到的

相关问题