2016-07-06 10 views
1

Ich mache FilterExpression mit Boto3-Bibliothek und Suche nach einem Benutzernamen in einer Tabelle, die 4 Einträge in dieser Tabelle hat. FilterExpression gibt nur 1 Datensatz und LastEvaluationKey mit eindeutiger_ID zurück. Wenn ich diese unique_id übergebe, um mehr Werte für diesen Benutzer zu erhalten, erhalte ich einen anderen Datensatz.dynamodb FilterExpression gibt unerwartete Daten zurück

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

und wenn ich Antwort sehen und den Wert von „LastEvaluationKey“ passieren, sehe ich einen anderen Datensatz für verschiedene Benutzer.

Wie bekomme ich alle Zeilen für den Benutzer und nicht zufällige Daten? Ich kann bestätigen, dass der Benutzer 4 Datensätze in dynamodb hat.

Antwort

0

Also, wenn ich rekursiv den Benutzernamen und "LastEvaluatedKey" an die Funktion übergeben, gibt es alle Daten und dann durch Verkettung, kann ich die vollständige Liste abrufen.

+0

Wenn Sie in diesem Kontext rekursiv sind .. was meinst du hier? FilterExpression funktioniert auch nicht richtig für mich. Versuchen herauszufinden, warum – Atifm

Verwandte Themen