我想知道不以0开头的数据的位置。像下面的例子一样,第一行的第一个数字是00,它返回3个位置,作为从3个位置开始的非零值
member_id values
008507743 3
017521344 2
040324598 2
sql语句code:-
select member_id,patindex('%[^0]%',MEMBER_ID)as Index_value from tablename
我和sql中的上述内容只是想在hive中得到相同的结果,但无法找到相同的解决方案。任何帮助都是值得赞赏的。谢谢
1条答案
按热度按时间ibps3vxo1#
试试这个
来自文档
instr(string str,string substr):-返回str中第一次出现substr的位置。如果其中一个参数为null,则返回null;如果str中找不到substr,则返回0。请注意,这不是基于零的。str中的第一个字符具有索引1。
解释
regexp_extract
返回第一个不存在的数字/字母0
.instr
返回从中找到的元素的索引regexp_extract