【问题标题】:How do we use LIKE operator or LIKE condition in DynamoDB?我们如何在 DynamoDB 中使用 LIKE 运算符或 LIKE 条件?
【发布时间】:2020-10-20 14:09:27
【问题描述】:

我想获取数据/记录列表,类似于 DynamoDB 中的“%JUICE%” 有没有办法获取这样的数据?

【问题讨论】:

标签: java sql jpa amazon-dynamodb


【解决方案1】:

DynamoDB 擅长通配符搜索。话虽如此,您确实有几个选择:

  1. 您可以将begins_with 运算符与sort keys 一起使用。文档说

begins_with (a, substr) — 如果属性 a 的值以特定子字符串开头,则为 true

  1. contains 运算符可用于对数据类型 STRING、SET 或 LIST 的 FilterExpressionscan 操作。更多信息在the docs

请记住,在 scan 操作上使用 contains 关键字将是在 DynamoDB 中实现通配符搜索的低效方式。在 DynamoDB 之外实施这种类型的搜索可能会更好。一种常见的模式是使用 DynamoDB 流和 Elastic Search 来实现功能更全面的搜索功能。

【讨论】:

  • 扫描在 DynamoDB 中相当昂贵,但会提供这种灵活性。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-05-26
  • 2010-11-26
  • 2021-03-01
  • 1970-01-01
  • 1970-01-01
  • 2013-01-19
  • 2018-03-09
相关资源
最近更新 更多