0
我需要編寫一個配置單元查詢,其中的過濾器位於字段的文本中。需要做一些類似text_field包含的內容(「pattern1」和「pattern2」)或(「pattern3」和「pattern4」)Hive中的「contains」的替代方案
我知道我們可以多次使用「like」,但我希望更好替代。
在Hive中該怎麼辦?
我需要編寫一個配置單元查詢,其中的過濾器位於字段的文本中。需要做一些類似text_field包含的內容(「pattern1」和「pattern2」)或(「pattern3」和「pattern4」)Hive中的「contains」的替代方案
我知道我們可以多次使用「like」,但我希望更好替代。
在Hive中該怎麼辦?
您可以使用rlike
TRUE,如果A的任何(可能爲空)子字符串中的Java的正則表達式b匹配,否則返回FALSE。例如,'foobar'RLIKE'foo'評估爲TRUE,'foobar'RLIKE'^ f。* r $'也是如此。
WHERE (mycolumn rlike 'pattern1' AND mycolumn rlike 'pattern2')
OR (mycolumn rlike 'pattern3' AND mycolumn rlike 'pattern4')