Select 使用 PartiQL (DynamoDB) 的列表中的某个地图元素
Select a certain map element in a list using PartiQL (DynamoDB)
虽然我了解如何使用文档路径 select 地图中的列表项(例如 Devices.FireStick.DateWatched[0]),但我不知道如何反过来做。
比如说,我有一个包含地图列表的属性:
"Text": [
{
"Right": "Line one, right text",
"Left": "Line one, left text"
},
{
"Right": "Line two, right text",
"Left": "Line two, left text"
}]
我想在我的 PartiQL select 中获取第一行的左侧文本。我天真的做法:
select Text[0].Right from mytable where ID='123'
没有成功。
需要双引号DynamoDB reserved words,比如"right".
这是一个有效的 PartiQL 查询:
SELECT Text[0]."Right" FROM mytable WHERE id = '1'
此外,请注意,如果您的 table 名称包含连字符,那么也要引用它,例如:
SELECT Text[0]."Right" FROM "mytable-xyz" WHERE id = '1'
虽然我了解如何使用文档路径 select 地图中的列表项(例如 Devices.FireStick.DateWatched[0]),但我不知道如何反过来做。 比如说,我有一个包含地图列表的属性:
"Text": [
{
"Right": "Line one, right text",
"Left": "Line one, left text"
},
{
"Right": "Line two, right text",
"Left": "Line two, left text"
}]
我想在我的 PartiQL select 中获取第一行的左侧文本。我天真的做法:
select Text[0].Right from mytable where ID='123'
没有成功。
需要双引号DynamoDB reserved words,比如"right".
这是一个有效的 PartiQL 查询:
SELECT Text[0]."Right" FROM mytable WHERE id = '1'
此外,请注意,如果您的 table 名称包含连字符,那么也要引用它,例如:
SELECT Text[0]."Right" FROM "mytable-xyz" WHERE id = '1'