ruby-on-rails - 如何使用多个 id 查询 DynamoDB,例如:[1,2,3] #rails 中的 student_id
问题描述
我在 DynamoDB 中有一个表。
student_id, name, age, address partition_key: student_id, table_name: students
假设学生 ID 是 1、2、3 等...我想根据 ID 查询学生。例如 sql select * from students where id in (1,2,3)
如何在 DynamoDB 中做同样的事情
请帮助我查询参数。我试过了
params = {
:table_name=>"students",
:key_condition_expression=>"student_id IN :student_id",
:expression_attribute_values=>{":student_id"=> [1,2,3]}
}
解决方案
DynamoDB 不允许您在分区键周围应用条件(例如 [1,2,3] 中的 PK),您需要明确指定它。但是,您可以围绕排序键(<、>、begins_with 等)执行各种条件操作。
推荐阅读
- c# - 为什么这段代码不适合单元测试?
- python - 在 QT 设计器中,我可以从我的 python 脚本中设置一个文本标签 + 一个变量吗?
- c# - 我正在尝试从一个数字中获取数字总和,错误在哪里?
- c# - How do access both list and model using @ MVC
- r - 按列合并多个 tsv
- python - Fabric 将 cronjob 添加到错误的用户
- angular - 等待 Jasmine 中的 Angular 路由器导航
- angular12 - 类型声明的 Angular 12 升级问题
- ruby-on-rails - 如何在 Rails 6 ActiveStorage 中附加带有扩展名的文件名?
- node.js - 在 Mongo DB 中用另一个对象替换对象数组