AWS Appsync 和 DynamoDB - 使用 IN 运算符进行查询
AWS Appsync and DynamoDB - Query using IN operator
我在 DynamoDB 中有一个 table 连接到应用程序同步 API。 table 看起来像...
ID
State
Value
0
NY
100
1
IL
0
2
TX
50
我正在尝试使用 appsync UI 通过“IN”运算符查询 table,但这似乎不是通过 Appsync 的选项。例如,我可能希望查询状态为 'TX' 或 'IL' 的行。我认为查询可能看起来像...
query MyQuery {
listResults(filter: {state: {in: ["TX", "IL"]}}) {
items {
id
state
value
}
}
但是,appsync 似乎不支持 IN 运算符。我有“eq”、“gt”、“lt”等选项,但没有 IN 运算符的选项。似乎是一个非常标准的用例,但我正在努力寻找文档。如果是这种情况,可能的解决方法是什么?我尝试过使用自定义解析器,但找到了明确的答案。
约束与 Amplify 相关,does not support the IN operator 开箱即用。如您所知,高级 Amplify 抽象出一些您必须在 AppSync 和数据源中手动执行的应用程序管道。代价是缺乏灵活性。
Appsync 可以很好地处理您的 MyQuery
。 AppSync 也没有定义 in
运算符(或 gt
、lt
或其他)。只是在 AppSync 中,您可以自由定义您认为合适的类型和解析器。灵活性,但更多样板文件。
如果您坚持使用 Amplify,则可以使用新的输入类型手动修改模式。然后实现一个 Amplify custom resolver 和 link 你的新类型。
我在 DynamoDB 中有一个 table 连接到应用程序同步 API。 table 看起来像...
ID | State | Value |
---|---|---|
0 | NY | 100 |
1 | IL | 0 |
2 | TX | 50 |
我正在尝试使用 appsync UI 通过“IN”运算符查询 table,但这似乎不是通过 Appsync 的选项。例如,我可能希望查询状态为 'TX' 或 'IL' 的行。我认为查询可能看起来像...
query MyQuery {
listResults(filter: {state: {in: ["TX", "IL"]}}) {
items {
id
state
value
}
}
但是,appsync 似乎不支持 IN 运算符。我有“eq”、“gt”、“lt”等选项,但没有 IN 运算符的选项。似乎是一个非常标准的用例,但我正在努力寻找文档。如果是这种情况,可能的解决方法是什么?我尝试过使用自定义解析器,但找到了明确的答案。
约束与 Amplify 相关,does not support the IN operator 开箱即用。如您所知,高级 Amplify 抽象出一些您必须在 AppSync 和数据源中手动执行的应用程序管道。代价是缺乏灵活性。
Appsync 可以很好地处理您的 MyQuery
。 AppSync 也没有定义 in
运算符(或 gt
、lt
或其他)。只是在 AppSync 中,您可以自由定义您认为合适的类型和解析器。灵活性,但更多样板文件。
如果您坚持使用 Amplify,则可以使用新的输入类型手动修改模式。然后实现一个 Amplify custom resolver 和 link 你的新类型。