如何使用StandardSQL在Google Big Query中提取部分字符串

时间:2017-02-28 02:15:56

标签: google-bigquery

我的hit.product.ProductSku值是XXXXX-1234-2017-02-27-A模式。我想提取2017-02-27,这是该值的日期。

我尝试使用Substring,Charindex,trim,left,但这些功能不可用。

任何人都知道该怎么做?我正在使用标准SQL。

谢谢

1 个答案:

答案 0 :(得分:3)

尝试

  
#standardSQL
SELECT PARSE_DATE('%Y-%m-%d', REGEXP_EXTRACT('XXXXX-1234-2017-02-27-A', r'\w+-\d+-(.*)-\w'))

我在这里使用非常广泛的模式,基于您的问题中提供的内容 - 但您可能想要改进它。像下面这样的东西,等等

#standardSQL
SELECT PARSE_DATE('%Y-%m-%d', REGEXP_EXTRACT('XXXXX-1234-2017-02-27-A', r'\w+-\d+-(\d{4}-\d{2}-\d{2})-\w'))