我是NoSQL数据库的新手,我已经将数据库模式从存储日期更改为UTC时间戳字符串,转换为UNIX时间戳(数字),希望我可以创建扫描或查询表达式查找表中最近的1000个项目。我还没有找到一个简单的代码片段来完成这个使用AWSDynamoDBQueryExpression类。扫描似乎没有任何排序机制,但查询可能。有任何想法吗?UNIX的AWSDynamoDBQueryExpression时间戳
0
A
回答
1
DynamoDB中没有ORDER BY
功能。如果您想运行top N查询,您必须执行扫描并自行排序结果。
Mark B是正确的,查询结果可以按排序键进行排序,但仅限于查询的上下文内。查询本质上局限于单个分区键。
如果您的表很小,那么您可以在表中创建一个全局二级索引,其中分区键可以是所有项相同的属性,然后使用timestamp属性作为排序键。但请记住,一旦你的桌子变大,这将会崩溃。如果你这样做,你可能不会使用Dynamo。您最好在RDS上使用关系数据库。
1
首先,您需要确保timestamp字段是您的DynamoDB表(或该表上的全局二级索引的排序键)的排序键。然后你只需要运行一个查询。从the documentation:
查询结果总是按排序键值排序。如果排序键的数据类型为 ,则结果以数字 顺序返回;否则,结果将按照UTF-8字节的顺序返回。默认情况下,排序顺序为 。要颠倒顺序,请将 ScanIndexForward参数设置为false。
相关问题
- 1. Unix时间戳到LDAP时间戳
- 2. Unix时间戳到FAT时间戳
- 3. 时间戳:iso8601 vs unix时间戳
- 4. PHP Unix时间戳
- 5. PHP UNIX时间戳
- 6. 转换Unix时间戳STR和STR到UNIX时间戳在python
- 7. sqlite中的Unix时间戳?
- 8. Unix的时间戳格式
- 9. Jenkins中的Unix时间戳
- 10. 即时到Unix时间戳
- 11. UNIX时间戳小时前
- 12. Unix时间戳的时间转换
- 13. unix时间戳之间的时差
- 14. 从Unix时间戳组的时间槽
- 15. Oracle使用UNIX时间戳
- 16. 转换天unix时间戳
- 17. UNIX时间戳和MYSQL
- 18. PHP比较UNIX时间戳
- 19. 转换Unix时间戳
- 20. 蜂巢UNIX时间戳
- 21. Unix时间戳Web服务
- 22. date_parse_from_format到UNIX时间戳
- 23. 店unix时间戳到MySQL
- 24. Apple Mac和Unix时间戳
- 25. 日期到Unix时间戳
- 26. 获取unix时间戳
- 27. Mysql unix时间戳选择
- 28. Rapidminer:转换unix时间戳
- 29. UNIX时间戳到MySQL DATETIME
- 30. C#Unix时间戳到DateTime
NoSQL听起来像是有史以来最糟糕的憎恶,谢谢帮助我理解为什么 –
如何在SQL land中“排序” - 输入“Order By [column name]”。如何在NoSQL DynamoDB中“排序” - 1.创建分区键2.创建排序键3.创建包含键的全局二级索引4.确保在全局二级索引上设置了正确的查询权限5.为分区添加keyConditionExpression键6.向你选择的上帝祈祷7.旋转3次左右 –