Ich versuche, meinen Tisch Tinpon mit einem sekundären Index ergibt eine Partition-Schlüssel Kategorie und sortierschlüssel tinponId abzufragen. Mein Ziel ist es, Gegenstände mit bestimmten tinponIds auszuschließen. Mein erster Gedanke wäre, einen negativen Vergleich zu machen: keyConditionExpression = "category = :category AND tinponId != :tinponId"
aber es gibt nur einen Vergleich = Vergleich. Dann habe ich versucht, Serval andere Methoden (mit leider nicht vorhanden): keyConditionExpression = "category = :category NOT tinponId = :tinponId" keyConditionExpression = "category = :category AND tinponId <> :tinponId" keyConditionExpression = "category = :category AND tinponId < :tinponId AND tinponId > :tinponId"
Nach the AWS guide gibt es keine nicht gleich comparisson. Warum? Und gibt es eine Möglichkeit, DynamoDB abzufragen, eine Liste von IDs ausgeschlossen oder ist die einzige Option, um eine ganze Reihe von Elementen abzurufen und sie später manuell zu filtern?Warum gibt es in DynamoDB-Abfragen keinen Vergleich ** nicht gleich?
1
A
Antwort
3
Die KeyConditionExpression
erlaubt nicht gleich für den Sortierschlüssel. Sie können jedoch die "Nicht gleich, d. H. <>" in FilterExpression
verwenden.
KeyConditionExpression : 'category = :category',
FilterExpression : 'tinponId <> :tinponIdVal',
ExpressionAttributeValues : {
':category' : 'somevalue',
':tinponIdVal' : 'somevalue'
}
Verwandte Themen
- 1. Warum gibt es keinen Kompilierungsfehler?
- 2. Warum gibt es keinen Vergleich Aussage in dieser javascript 'If ... Else ...' Aussage
- 3. Warum gibt es einen nicht gleich Operator in Python
- 4. Warum gibt es keinen boost :: copy_on_write_ptr?
- 5. Warum gibt es hier keinen erreichbaren Code?
- 6. Warum gibt es keinen 'channel originate' Anruf?
- 7. Warum gibt es keinen genauen C++ - Decompiler?
- 8. Warum gibt es keinen std :: copy_if Algorithmus?
- 9. Warum gibt es keinen Microsoft.Win64-Namespace?
- 10. Haskell: Warum gibt es keinen Typunterschied (und warum kompiliert er)?
- 11. NaNs Vergleich gleich in Numpy
- 12. Warum gibt es in F # keinen geschützten Zugriffsmodifikator?
- 13. Warum gibt es keinen AtomicBooleanArray-Datentyp in Java?
- 14. Gibt es einen CSS-Selektor nicht gleich?
- 15. Warum gibt es keinen Fehler in diesem Programm?
- 16. sql genau gleich, gibt es etwas?
- 17. Warum gibt es keinen Varchar-Datentyp in DynamicReports
- 18. warum gibt es keinen finden für Vektor in C++
- 19. Warum gibt es in PHP PHP nicht?
- 20. Excel: Zeichenfolge vs Ganzzahl Vergleich ist gleich WAHR, aber warum?
- 21. sql nicht gleich gleichen String-Vergleich richtig
- 22. Es gibt keinen CNTK Befehl
- 23. Warum gibt es keinen Oracle Forms oder Reports Decompiler? (Technisch)
- 24. Warum gibt es keinen E_NOTICE Fehler beim ersten Anruf?
- 25. Warum gibt es keinen Cursor-Adapter für RecyclerView?
- 26. Warum gibt es keinen Blick! Funktion für clojure transiente Vektoren?
- 27. Warum java.util.Set enthält keinen Wert Getter? Gibt es Alternativen dazu?
- 28. Warum gibt es keinen ArrayList (T [] t) -Konstruktor?
- 29. Warum gibt es keinen Autorelease-Pool, wenn ich performanceSelectorInBackground :?
- 30. Warum gibt es keinen CSS-ähnlichen GUI-Ersteller
Ok mein nächstes Problem ist, dass ich gewählt habe ** ** tinponId als Primärschlüssel meiner ** ** Tinpon Tabelle und jetzt den Fehler 'Filterausdruck bekommen können nur Nicht-Primärschlüssel attributes' enthalten ist Gibt es eine andere Lösung, oder muss ich das Design meiner Tabelle ändern, um die vorgeschlagene Filtermethode zu verwenden? – Knowledge
Sie müssen GSI verwenden (und möglicherweise GSI abfragen, das einen anderen Partitionsschlüssel hat) oder das Design der Haupttabelle ändern, um einen anderen Partitionsschlüssel zu haben. – notionquest