2016-07-06 10 views
1

私はboto3ライブラリでFilterExpressionを実行しており、そのテーブルに4つのエントリを持つテーブルのユーザ名を探しています。 FilterExpressionは1レコードのみを返し、LastEvaluationKeyはunique_idを返します。そのユーザーのより多くの値を取得するためにunique_idを渡すと、別のデータセットが取得されます。dynamodb FilterExpressionは予期しないデータを返します

def lambda_handler(event,context): 
    username="john" 
    response = emp_info.scan(
     FilterExpression=Attr('username').eq(username) 
    ) 
    print response 

私が応答を見て、 "LastEvaluationKey"の値を渡すと、別のユーザーのために別のデータセットが表示されます。

ランダムなデータセットではなく、ユーザーのすべての行を取得するにはどうすればよいですか?私はdynamodbに4つのレコードがあることを確認できます。

答えて

0

したがって、ユーザー名と "LastEvaluatedKey"を再帰的に関数に渡すと、すべてのデータが返され、チェーン化されて完全なリストが得られます。

+0

このコンテキストで再帰的になると、ここではどういう意味ですか? FilterExpressionは私にとってはうまくいきません。理由を理解しようとする – Atifm

関連する問題