sql - S3 选择无效路径组件
问题描述
我试图弄清楚如何使用 AWS S3 Select,一切看起来都很简单,但是下面的查询就是不想工作:
select r.value from S3Object[*].outputs.private_subnets r
上面的返回Invalid Path component.
这是我正在使用的 JSON:
{
"outputs": {
"private_subnets": {
"value": [
"subnet-1",
"subnet-2",
"subnet-3"
],
"type": [
"tuple",
[
"string",
"string",
"string"
]
]
},
"public_subnets": {
"value": [
"subnet-1",
"subnet-2",
"subnet-3"
],
"type": [
"tuple",
[
"string",
"string",
"string"
]
]
},
"vpc_id": {
"value": "vpc-123",
"type": "string"
}
}
}
我只是不明白错误,是value
SQL中的特殊词吗?
这是我到目前为止尝试过的
select r from S3Object[*].outputs.private_subnets r
:
{
"r": {
"value": [
"subnet-1",
"subnet-2",
"subnet-3"
],
"type": [
"tuple",
[
"string",
"string",
"string"
]
]
}
}
select r.type from S3Object[*].outputs.private_subnets r
:
{
"type": [
"tuple",
[
"string",
"string",
"string"
]
]
}
所以我只是不明白有什么问题value
。
解决方案
您无法选择此项,因为“值”是保留关键字。 https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-glacier-select-sql-reference-keyword-list.html。这可以使用值周围的双引号进行转义。
推荐阅读
- java - 请解释为什么 x 是 2
- python - 如何拆分列表中的元素并从列表中获取日期和时间
- outlook - 如何防止 Mailgun 电子邮件进入垃圾文件夹?
- java - XSL:将字符串值传递给模板匹配
- typescript - 以正确的方式导入命名空间
- ruby-on-rails - 带有活动记录关联的 simple_form 嵌套复选框
- dart - 如何在 Flutter 中使卡片小部件可触摸?
- sql - 从同一列中选择具有特定多个值的行?
- java - 如何单击在 Selenium webdriver 中的多个 div 标签内写入的 span 按钮
- linux - 在运行 Apache 服务器的 Ubuntu 机器上播放 VLC,没有播放