Bigquery SQL:使用键值表转换表值
我有两张桌子。 第一个表包含键值数据:Bigquery SQL:使用键值表转换表值,sql,google-bigquery,legacy-sql,Sql,Google Bigquery,Legacy Sql,我有两张桌子。 第一个表包含键值数据: Answer_Code |Fruit 1 |Apple 2 |Orange 3 |Pear 4 |Watermelon 第二个表包含收集的数据 Participant|Fruit Aaa |1 Bbb |2 Ccc |3 如何连接这些表,以便将第二个表中的水果列替换为第一个表中的
Answer_Code |Fruit
1 |Apple
2 |Orange
3 |Pear
4 |Watermelon
第二个表包含收集的数据
Participant|Fruit
Aaa |1
Bbb |2
Ccc |3
如何连接这些表,以便将第二个表中的水果列替换为第一个表中的水果值
Participant|Fruit
Aaa |Apple
Bbb |Orange
Ccc |Watermelon
我尝试了以下方法:
SELECT T1.*, T2.*,
FROM [Table1] T1,
JOIN [Table2] T2 ON T1.Fruit = T2.Fruit,
LIMIT 10;
我得到以下错误:
ON子句必须是且of=每个表中一个字段名的比较,所有字段名都以表名为前缀。考虑使用标准的SQL.COM/BigQue/Doc/参考/标准SQL/),它允许涉及表达式和剩余谓词的非均匀连接和比较。
此外,我无法获得更新,设置为处理bigquery 您的ON子句不正确
而不是T1上的
。Fruit=T2.Fruit
你应该在T1上有。response\u code=T2.Fruit
此外,您的查询中几乎没有多余的逗号 无论如何,您的查询应该如下所示
SELECT T2.Participant, T1.Fruit
FROM [Table1] T1
RIGHT JOIN [Table2] T2 ON T1.Answer_Code = T2.Fruit
LIMIT 10
还建议使用BigQuery标准SQL-标准SQL是查询存储在BigQuery中的数据的首选SQL方言,并且具有多个Include,因此您可以
获取更新,设置为使用BigQuery
使用标准SQL!这是最简单的解决方案。太好了!非常感谢!如果回答了你的问题,请考虑接受答案:O)