BigQuery Left Join支持

时间:2018-06-13 09:32:23

标签: sql google-bigquery

我希望在bigquery中有一个左连接。

<servlet-name>

我收到错误

错误:如果条件与连接两边的字段相等,则不能使用LEFT OUTER JOIN。

如果我删除CASE,它会起作用。

1 个答案:

答案 0 :(得分:0)

与MySQL不同,BigQuery不太擅长加入复杂的关系。

我建议您创建一个中间/临时(请参阅here)表,然后您可以在该表中加入相等(即使视图适用于这些事项)

您可以创建一个使用该case语句的列:

CASE
WHEN(SUBSTR(name,1,6)='000000') THEN mtr 
WHEN(CHAR_LENGTH(CAST(bccbnc AS STRING))>5) THEN SUBSTR(name,1,6) 
ELSE SUBSTR(name,1,5) end as column_to_join_onbccbnc

然后加入它