Google bigquery Bigquery中REGEXP_INSTR的替代方法

Google bigquery Bigquery中REGEXP_INSTR的替代方法,google-bigquery,Google Bigquery,我们是否在Bigquery中有一个替代REGEXP_INSTR的函数,因为该函数在Bigquery中不可用 我们使用REGEXP_INSTR的示例如下: 我有一个发票编号列,其值如“123A45”、“54B381”、“1A2B21”等,我需要从这些值中找到字母表第一次出现的位置。在这种情况下,它将分别为4、3和2。为此,我们使用了Regexp_instr函数。我们可以使用Regexp\u Contains或任何其他替代方法实现相同的功能吗 谢谢 Thirumalai它叫 下面是BigQuery标

我们是否在Bigquery中有一个替代REGEXP_INSTR的函数,因为该函数在Bigquery中不可用

我们使用REGEXP_INSTR的示例如下:


我有一个发票编号列,其值如“123A45”、“54B381”、“1A2B21”等,我需要从这些值中找到字母表第一次出现的位置。在这种情况下,它将分别为4、3和2。为此,我们使用了Regexp_instr函数。我们可以使用Regexp\u Contains或任何其他替代方法实现相同的功能吗

谢谢 Thirumalai

它叫


下面是BigQuery标准SQL

#standardSQL
SELECT invoice_number, 
  LENGTH(REGEXP_EXTRACT(invoice_number, r'^(\d*)[^\d]')) + 1 AS first_occurrence_of_the_alphabet 
FROM t    
如果要应用于问题中的样本数据,则输出为

Row invoice_number  first_occurrence_of_the_alphabet     
1   123A45          4    
2   54B381          3    
3   1A2B21          2   

我有一个发票编号列,其值如“123A45”、“54B381”、“1A2B21”等,我需要从这些值中找到字母表第一次出现的位置。在这种情况下,它将分别为4、3和2。为此,我们使用了Regexp_instr函数。我们能否使用Regexp_Contains实现相同的功能?您现在提出的问题不同了。也许打开一个新问题,或者用这些新细节编辑您的原始问题。好的,我将用这些细节编辑问题。谢谢。你好,Mikhail,上面的函数是否与此等价:regexp_instr(发票编号,[A-Z]',1,1)?在您的情况下-看起来是这样的
Row invoice_number  first_occurrence_of_the_alphabet     
1   123A45          4    
2   54B381          3    
3   1A2B21          2