Следующий код в Google BigQuery выбрасывает ошибку индекса за пределами границ.
SELECT
SPLIT(CONCEPT_CKI, "!")[OFFSET(0)] AS Standard_Name
,SPLIT(CONCEPT_CKI, "!")[OFFSET(1)] AS Standard_Code
FROM
(
SELECT "MULTUM!123" AS CONCEPT_CKI
UNION ALL
SELECT "MULTUM234" AS CONCEPT_CKI
)
Мы бы хотели, чтобы разбиение работало с полями, с которыми оно может работать, и просто получило бы значение NULL для второго поля, когда это невозможно. (т.е. несколько похоже на то, как команда SAFE_CAST выдает NULL, если она не может выполнить приведение.)
Как сделать «безопасный» SPLIT для полей в Google BigQuery?