【问题标题】:Perfom get query with value other than key使用键以外的值执行获取查询
【发布时间】:2019-10-12 23:45:38
【问题描述】:

我是否可以使用 get 查询来查询主键以外的值?因为似乎我只能传入 id 列,但是我无法使用 id 列以外的列执行 get 查询。 或者我可以使用过滤器之类的普通列表查询来做到这一点吗?感谢您的帮助!

【问题讨论】:

    标签: graphql aws-amplify aws-appsync


    【解决方案1】:

    是的,您可以通过 AppSync 发出任何 DynamoDB 查询。这提供了一个很好的介绍,涵盖了 PutItem、UpdateItem 和 GetItem https://docs.aws.amazon.com/appsync/latest/devguide/tutorial-dynamodb-resolvers.html。如果您需要通过一个键获取多个值,那么您应该使用 DynamoDB 查询操作https://docs.aws.amazon.com/appsync/latest/devguide/resolver-mapping-template-reference-dynamodb.html#aws-appsync-resolver-mapping-template-reference-dynamodb-query

    使用 DynamoDB 时,您需要将访问模式融入 DynamoDB 表和二级索引的关键架构中。例如,如果您想通过“email”获取记录,那么您应该创建一个 hash 键为“email”的表。然后,您将能够通过“电子邮件”执行 GetItem 操作。如果您需要通过电子邮件查询并且记录按日期排序,那么您需要一个表,其中 hash 键为“email”,sort 键为“date” .等等。

    您可以创建二级索引,如果您想要更高级一点,可以创建复合索引值和重载索引,以针对您的访问模式优化 DynamoDB 表。查看 DynamoDB 文档以了解更多信息https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/bp-indexes.html

    【讨论】:

    猜你喜欢
    • 2020-12-28
    • 1970-01-01
    • 2018-09-01
    • 1970-01-01
    • 2018-09-24
    • 1970-01-01
    • 2017-11-25
    • 1970-01-01
    • 2012-01-09
    相关资源
    最近更新 更多