正式版日期时间之间的boto3 dynamodb扫描过滤器

问题描述 投票:0回答:1

我正在尝试查询以纪元,十进制格式表示的属性时间戳。目的是过滤一天中存在的所有项目。

我在下面有查询,也尝试过between子句,但都给了我空的回报。

from boto3.dynamodb.conditions import Attr
from datetime import datetime
from decimal import Decimal

start = datetime(2020, 5, 25).strftime('%s')
end = datetime(2020, 5, 26).strftime('%s')
response = table.scan(
            FilterExpression = \
                Attr('timestamp').gte(Decimal(start)) & \
                Attr('timestamp').lt(Decimal(end))
            )
print(response)

但是,我发现仅使用gte(大于)或lt(小于)分别返回正确的响应,这使他们无法一起工作感到困惑。谁能帮忙?

python-3.x boto3 dynamodb-queries
1个回答
0
投票

交换开始日期和结束日期的值,因为根据您的扫描查询,开始日期应该更早

start = datetime(2020, 5, 25).strftime('%s')
end = datetime(2020, 5, 26).strftime('%s')
© www.soinside.com 2019 - 2024. All rights reserved.