2017-12-07 3 views
0

Ich brauche das folgende Feld aufzuteilen: LP1234354_CD12346RegEx in BigQuery

und erhalten Sie die 2 separate Spalten mit den folgenden Werten: 1234354 und 12346. Ich versuchte Regex und rechts/links, aber nicht erfolgreich. Vielen Dank im Voraus! Dummy-Daten:

SELECT 'LP1234354_CD12346' AS word UNION ALL 
    SELECT 'LP1234456_CD12345' 

Antwort

1

Unten ist für BigQuery Standard-SQL

#standardSQL 
WITH `project.dataset.table` AS (
    SELECT 1 AS id, 'LP1234354_CD12346' AS word UNION ALL 
    SELECT 2, 'LP1234456_CD12345' 
) 
SELECT id, 
    REGEXP_EXTRACT_ALL(word, r'(\d+)')[SAFE_OFFSET(0)] AS val1, 
    REGEXP_EXTRACT_ALL(word, r'(\d+)')[SAFE_OFFSET(1)] AS val2 
FROM `project.dataset.table` 
+0

Vielen Dank! Gelöst. – hamsy