簡體   English   中英

雪花正則表達式返回零行

[英]Snowflake regexp return zero rows

我在雪花中遇到了一個奇怪的場景,我不太確定如何解決。 我在一個看起來像這樣的列中有一些數據 -

ID, Names
1, Google | Bing | BAU | Sale
2, BAU | Sale | Bing
3, Google | Bing

我正在嘗試使用 REGEXP 來提取與我的模式匹配的任何行,就像這樣 -

where Name regexp ('Google|Bing')

我希望能返回所有 3 行 - 在這個階段我得到零。

感謝你們提供的任何幫助

SELECT column1 
    ,regexp_count(column1, 'Google|Bing')
FROM VALUES
('Google | Bing | BAU | Sale'),
('BAU | Sale | Bing'),
('Google | Bing');

給出:

第 1 列 REGEXP_COUNT(COLUMN1, 'GOOGLE|BING')
谷歌 | 必應 | BAU| 銷售 2個
BAU| 銷售 | 必應 1個
谷歌 | 必應 2個

所以模式匹配的東西......

SELECT column1 
FROM VALUES
    ('Google | Bing | BAU | Sale'),
    ('BAU | Sale | Bing'),
    ('Google | Bing')
WHERE column1 regexp '.*(Google|Bing).*';

作品

第 1 列
谷歌 | 必應 | BAU| 銷售
BAU| 銷售 | 必應
谷歌 | 必應

因為

function 在兩端隱式錨定一個模式(即''自動變為'^$','ABC'自動變為'^ABC$')。 要匹配任何以 ABC 開頭的字符串,模式將為“ABC.*”。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM