Google bigquery 在bigquery中查询json文件时出现标量子查询错误
我是bigquery的初学者!我在bigquery中有这个json文件: 我想取消所有列的测试,我正在尝试以下查询:Google bigquery 在bigquery中查询json文件时出现标量子查询错误,google-bigquery,Google Bigquery,我是bigquery的初学者!我在bigquery中有这个json文件: 我想取消所有列的测试,我正在尝试以下查询: SELECT *, (SELECT AS STRUCT * FROM UNNEST(list)) FROM `project.dataset.table` 但是,我遇到了以下错误: 标量子查询生成了多个元素 我已经读过所有其他帖子,上面都有同样的错误,但是没有一篇对我有帮助。看起来List是STRUCT的数组,而city只是STRUCT。请确保您努力解释表列的详细信
SELECT *,
(SELECT AS STRUCT * FROM UNNEST(list))
FROM `project.dataset.table`
但是,我遇到了以下错误:
标量子查询生成了多个元素
我已经读过所有其他帖子,上面都有同样的错误,但是没有一篇对我有帮助。看起来
List
是STRUCT
的数组,而city
只是STRUCT
。请确保您努力解释表列的详细信息/类型以及问题的基本原理
#standardSQL
SELECT city.*,
sys.pod, clouds.all, list.dx_txt, weather.description, weather.icon, weather.main
FROM `project.dataset.table`,
UNNEST(list.weather) weather, UNNEST(list.sys) sys, UNNEST(list.clouds) clouds
试试这个:
SELECT
city.id as city_id,
city.sunset as sunset,
city.country as country,
city.timezone as timezone,
city.name as name,
city.coord.lon as lon,
city.coord.lat as lat,
city.sunrise as sunrise,
weather.description,
weather.icon,
weather.main,
list.dt_txt,
list.clouds.all,
list.sys.pod
FROM `project.dataset.table`, UNNEST(list) as list, UNNEST(list.weather) as weather
希望有帮助。无法处理您的查询。我得到了一个错误:“UNNEST中引用的值必须是数组。UNNEST包含STRUCT类型的表达式”您所说的“您的问题的基本原理”是什么意思?在对代码稍作调整后,我在field list.dx_txt中发现了这个错误:“STRUCT中不存在字段名dx_txt;您是指dt_txt吗?在[14:9]”这个字段的类型为:TIMESTAMP,模式为null,描述为:bq datetime。我正在查找如何修复,但尚未找到任何答案。谢谢你的帮助,我已经修好了。让我知道它是否有效。我所说的“问题的基本原理”是指查询背后的目标(例如,您希望在输出中实现什么,预期的输出是什么,表模式是什么,等等),与查看屏幕截图以确定列类型相比,这使得回答问题更容易。您输入了相同的代码!与您第一次输入的代码相比,差异在哪里?我解释说这不正常!这就是为什么我做了调整,现在只有一个错误:“STRUCT中不存在字段名dx_txt;您是指dt_txt吗?在[14:9]”字段“list.dt_txt”中。根据图片和你的回答,你已经完全理解了我需要什么,因此,我想不需要更多的细节。无论如何,谢谢你。最佳评价因为在你发布的屏幕截图中,你的列名看起来像dt_txt
,我现在在回答中已经更改了。当我说你需要更明确、更详细地回答你想问的问题时,你真的需要解决你的问题,解释你的列类型、名称、嵌套结构等,而不是简单地发布一个半可见的屏幕截图,让人们猜测。