#google-bigquery
#google-bigquery
Вопрос:
Как избежать ошибок типа «Неверное значение int64: 72 017» в стандартном SQL в BQ? Пожалуйста, дайте мне знать методы преобразования 17 в 17
Комментарии:
1. Я думаю, нам нужно больше контекста здесь
Ответ №1:
Возможно, вам потребуется экранировать обратную косую черту, если она есть в ваших данных … тогда, возможно, есть пик в REGEXP_REPLACE и SAFE_CAST … это может быть хорошим подходом, если ваши данные несколько загрязнены.
#standard sql :
with cte as ( select 72 a , '\01d7f' b union all select 82 , '\018' )
выберите a , REGEXP_REPLACE(b,'[^0-9 ]’,») , a / safe_cast(REGEXP_REPLACE(b,'[^0-9 ]’,») как числовой) из cte
a f0_ f1_
72 017 4.235294118
82 018 4.555555556