[英]HiveQL - String contains equivalent in hiveql UDF?
我想使用 hiveql UDF 檢查字符串是否包含任何特定字符?
我遇到了下面的一個。
find_in_set(str, strlist)
這是要使用的正確UDF嗎?
例如:
下面的列的值中包含“1”。
column1 = "test1String"
我需要編寫一個 HiveQL,其中條件返回 column1 值包含 1 的行。
int instr(string str, string substr)
返回 substr 在 str 中第一次出現的位置。 如果任一參數為 null,則返回 null,如果在 str 中找不到 substr,則返回 0。 請注意,這不是基於零的。 str 中的第一個字符的索引為 1。
select case when instr (column1, '1') >0 then 'contains' else 'not contains' end from ...
請參閱此參考: https : //cwiki.apache.org/confluence/display/Hive/LanguageManual+UDF
還使用rlike
:
select case when column1 rlike '1' then 'contains' else 'not contains' end
使用like
:
select case when column1 like '%1%' then 'contains' else 'not contains' end
使用locate
:
select case when locate('1', column1) >0 then 'contains' else 'not contains' end
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.