【问题标题】:pynamodb - Get DB entries with only hash keypynamodb - 仅使用哈希键获取数据库条目
【发布时间】:2018-03-12 08:56:33
【问题描述】:

使用pynamodb,我想获取与表中某个哈希键匹配的所有范围键。

我知道我可以进行扫描,然后过滤掉与哈希键匹配的条目,如下所示:

from pynamodb.models import Model 
from pynamodb.attributes import UnicodeAttribute

class Users(Model):
    class Meta:
        table_name = 'user_posts'
    username = UnicodeAttribute(hash_key=True)
    post_id = UnicodeAttribute(range_key=True)

# Get all post_id's for a username
user = 'johndoe22'
posts = []

for entry in Users.scan():
    if entry.username == user:
        posts.append(entry.post_id)

我想将过滤逻辑移动到查询级别,这样我就不必拉下数据库的全部内容。我怎样才能做到这一点?

【问题讨论】:

    标签: python amazon-web-services amazon-dynamodb boto3


    【解决方案1】:

    在这种情况下,您需要使用查询而不是扫描操作。我不熟悉python,所以我无法为您提供帮助,但是当您想使用范围/哈希键进行查询时,扫描操作很可能不是您想要使用的,请查看查询操作: http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Query.html

    【讨论】:

      猜你喜欢
      • 2014-09-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-01-30
      • 1970-01-01
      • 1970-01-01
      • 2012-08-17
      • 1970-01-01
      相关资源
      最近更新 更多