Google 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。请确保您努力解释表列的详细信

我是bigquery的初学者!我在bigquery中有这个json文件:

我想取消所有列的测试,我正在尝试以下查询:

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
,我现在在回答中已经更改了。当我说你需要更明确、更详细地回答你想问的问题时,你真的需要解决你的问题,解释你的列类型、名称、嵌套结构等,而不是简单地发布一个半可见的屏幕截图,让人们猜测。