Dynamodb 最大值
问题描述
我正在使用 Dynamodb.我有一个简单的 Employee 表,其中包含 id、name、salary、doj 等字段.dynamodb 中 select max(salary) from employee
的等效查询是什么?
I'm using Dynamodb. I have a simple Employee table with fields like id, name, salary, doj, etc. What is the equivalent query of select max(salary) from employee
in dynamodb?
解决方案
你可以为你的模式建模:
You can model your schema something like:
employee_id
,作为分区键salary
,作为表或本地二级索引的排序键.
employee_id
, as partition-keysalary
, as sort-key of the table or local secondary index.
然后,Query
表中给定的 employee_id
,ScanIndexForward
为 false,然后选择第一个返回的条目.由于 employee_id
的所有行都以排序方式存储,因此按 desc 顺序排列的第一个条目将是具有最高 salary
的条目.
Then, Query
your table for given employee_id
, with ScanIndexForward
as false, and pick the first returned entry. Since all rows one employee_id
are stored in sorted fashion, the first entry in desc order will be the one with highest salary
.
您也可以将 Limit
保持为 1,在这种情况下 DynamoDB 将只返回一条记录.
You can also keep Limit
as 1, in which case DynamoDB will return only one record.
相关文档此处.
相关文章