Правильное использование COALESCE () в BigQuery - PullRequest
0 голосов
/ 13 января 2020

Я запускаю следующий скрипт:

select COALESCE(test1,test2,test3)
from (select null as test1,'' as test2,'fdsda' as test3)

и получаю следующую ошибку:

Нет соответствующей подписи для функции COALESCE для типов аргументов: INT64, STRING, STRING , Поддерживаемая подпись: COALESCE ([ANY, ...]) в [1: 8]

Есть идеи по поводу этой ошибки?

Ответы [ 2 ]

1 голос
/ 13 января 2020

При использовании COALESCE вы должны предоставить аргументы того же типа. Например, если первый аргумент является STRING, остальные также должны быть STRING. В вашем случае вы пытаетесь указать INTEGER в качестве первого параметра и STRING для других.

Надеюсь, это поможет

0 голосов
/ 13 января 2020

Использовать

select COALESCE(test1,test2,test3) from (select cast(null as string) as test1,'' as test2,'fdsda' as test3)

В любом случае, я согласен с местами - разные типы в объединении не имеют смысла.

...