2016-04-22 37 views
1

我想知道数据不以0开始的位置。 像下面的例子一样,第一行的第一个数字是00,它返回3位置作为非零值从3位开始找出从蜂巢中的字符串0位置

member_id   values 

008507743   3  
017521344   2  
040324598   2 

SQL代码: -

select member_id,patindex('%[^0]%',MEMBER_ID)as Index_value from tablename 

在SQL上面的事,我只是想在蜂巢一样,无法找出相同的解决方案。 任何帮助将是可观的。 感谢

回答

1

试试这个

SELECT INSTR(member_id, regexp_extract(member_id, '[^0]', 0)) from tablename 

documentation

INSTR(字符串str,字符串SUBSTR): - 返回SUBSTR的str中第一次出现的位置。如果任一参数为空,则返回null,如果在str中找不到substr,则返回0。请注意,这不是基于零的。在STR的第一个字符具有索引1

说明

regexp_extract返回所述第一数目/字母不是0

instr返回找到的元素,从regexp_extract

+0

由于它的工作的指标.. –

+0

@GurpreetSingh请接受并给予好评的答案,然后 – rock321987

+0

@GurpreetSingh参见[如何接受和给予好评](HTTP://元。 stackexchange.com/questions/5234/how-does-accepting-an-answer-work) – rock321987