我已经使用谷歌云SQL翻译工具.
如何转换Bigquery过程中的特定错误?
部件“当零除时,则
一些_输出:= 5000;'在Oracle SQL过程中尚未被GOOGLE SQL转换。
如何在Bigquery程序中添加这些错误条件?
如果Python中有任何解决方法,那也会很有帮助。
这段代码不需要“当其他人那么”,但我用它来举例说明,“当其他人那么”部分是由Bigquery转换的,但它跳过了特定的错误,如zero_divide或任何特定的错误,这可能是实际代码中需要的。
我已经使用谷歌云SQL翻译工具.
如何转换Bigquery过程中的特定错误?
部件“当零除时,则
一些_输出:= 5000;'在Oracle SQL过程中尚未被GOOGLE SQL转换。
如何在Bigquery程序中添加这些错误条件?
如果Python中有任何解决方法,那也会很有帮助。
这段代码不需要“当其他人那么”,但我用它来举例说明,“当其他人那么”部分是由Bigquery转换的,但它跳过了特定的错误,如zero_divide或任何特定的错误,这可能是实际代码中需要的。
2条答案
按热度按时间uajslkp61#
我不知道BigQuery。
你张贴的代码(左手边)对我来说没有多大意义;为什么它计算
quot
,但是如果发生了什么,你不设置它的值,而是设置n_sales_out
?无论如何:对于
zero_divide
,可以使用if-then-else
:对于
when others
,您必须弄清楚可能会出现什么错误。在简单的quot := n_sales / tv_done
计算中,您预计还会出现什么错误?可能会出现什么错误(除了zero_divide之外)?cbeh67ev2#
BigQuery确实具有过程异常处理功能,但在本例中,您似乎需要:
如果您尝试除以零,
SAFE_DIVIDE
将返回NULL
,因此您可以将其与默认值合并。