【问题标题】:How to use boolean attribute to create combined sort key如何使用布尔属性创建组合排序键
【发布时间】:2019-12-16 17:48:34
【问题描述】:

我有一个名为 Message 的 DynamoDB 表,具有以下属性:

  • message_id:数字(分区键)
  • user_id:数字(排序键)
  • incoming: 布尔值
  • subject: 字符串

我想创建一个全局二级索引,分区键为user_id,排序键为incomingsubject 的组合值。

全局二级索引:

  • user_id:分区键
  • incoming#subject:排序键

在将subjectsubject 组合之前,我是否必须手动将incoming 属性转换为字符串(其中true 变为"1"false 变为"0")?处理这种情况的标准方法是什么?

【问题讨论】:

    标签: amazon-dynamodb


    【解决方案1】:

    据我所知,我认为您不能仅在全局二级索引中具有 incoming#subject 之类的不同属性,而仅在原始表中可以将 incomingsubject 属性分开。索引中的属性将反映表中的属性。两种表示的区别在于它们具有不同的分区键和排序键。因此,您不能仅在索引中“组合”incoming#subject,而表中也没有此属性。

    但是,在表和索引中都有incoming#subject 可以解决您的问题,因为它的值将在数据库之外确定(当您写入表时)。因此,您应该能够在插入或更新数据时将其“转换”为您想要的任何内容——无论是true#my_subject_here 还是1#another_subject

    让我知道这是否适合你!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-04-05
      • 1970-01-01
      • 2019-06-27
      • 2020-07-04
      • 1970-01-01
      • 2017-06-22
      • 2013-01-21
      • 1970-01-01
      相关资源
      最近更新 更多