我有一个 S3 格式的 JSON 文件:
{
"A":"a",
"C":{"C1":"c1","C2":"c2"},
"E":"e"
}
当我查询时
select S3Object.A,S3Object.C1,S3Object.C2,S3Object.E from S3Object
我在 CSV 输出中得到以下信息:
A,C1,C2,E
a,e
我了解正确的查询如下:
select S3Object.A,S3Object.C.C1,S3Object.C.C2,S3Object.E from S3Object
这会给我输出
A,C.C1,C.C2,E
a,c1,c2,e
但是通过查询一个不存在的列,为什么值 e 被转移以显示 C1 列下面的值而不是 E 列?
如果我查询不存在的列,我在 Amazon AWS 中找不到任何有关该行为的文档。
select S3Object.A,S3Object.D,S3Object.E from S3Object
输出为:
A,D,E
a,e
有什么办法吗??
1.当JSON源中不存在时,从列标题中隐藏D??
A,E
a,e
2. 或者,将对应于列标题 D 的字段留空??
A,D,E
a,,e