Heim > Artikel > Web-Frontend > Wie implementiert man die Sortierung ohne Berücksichtigung der Groß-/Kleinschreibung mit der Abfrage von Cloud Firestore?
Firestore-Sortierung ohne Berücksichtigung der Groß-/Kleinschreibung mit der Abfrage von Cloud Firestore
In Cloud Firestore wird bei der Datensortierung grundsätzlich die Groß-/Kleinschreibung beachtet. Mithilfe der OrderBy-Methode werden Daten basierend auf dem angegebenen Feld in aufsteigender oder absteigender Reihenfolge sortiert. Wenn die Daten jedoch Abweichungen in der Groß-/Kleinschreibung enthalten, wie etwa „AAA“ und „aaa“, entspricht die zurückgegebene Reihenfolge möglicherweise nicht der gewünschten Reihenfolge.
Das Problem mit der Groß-/Kleinschreibung beim Sortieren
Standardmäßig sortiert Firestore Daten in der folgenden Reihenfolge:
AAA BBB aaa bbb
Die Erwartung könnte jedoch lauten:
AAA aaa BBB bbb
Lösung: Speichern von Daten ohne Berücksichtigung der Groß- und Kleinschreibung
Da Firestore kein integriertes Flag zum Ignorieren der Groß-/Kleinschreibung beim Sortieren bereitstellt, besteht die einzige Möglichkeit, eine Sortierung ohne Berücksichtigung der Groß-/Kleinschreibung zu erreichen, darin, ein zusätzliches Feld zu speichern, das eine Version der Daten enthält, die die Groß-/Kleinschreibung nicht berücksichtigt.
Stellen Sie sich ein Feld namens myData vor, das die Werte „AAA“ und „aaa“ speichert. Um die Sortierung ohne Berücksichtigung der Groß-/Kleinschreibung zu ermöglichen, müssen Sie ein zweites Feld namens myData_insensitive mit der Version der Daten ohne Berücksichtigung der Groß-/Kleinschreibung speichern:
DocA: -> myData = 'AAA' -> myData_insensitive = 'AAA' DocB: -> myData = 'aaa' -> myData_insensitive = 'AAA' DocC: -> myData = 'BBB' -> myData_insensitive = 'BBB' DocD: -> myData = 'bbb' -> myData_insensitive = 'BBB'
Abfragen und Sortieren nach Daten ohne Berücksichtigung der Groß-/Kleinschreibung
Sie können jetzt Daten nach myData_insensitive abfragen und ordnen, was das gewünschte Sortierergebnis ohne Berücksichtigung der Groß-/Kleinschreibung liefert.
Unicode und lokale Überlegungen
Das ist wichtig Beachten Sie, dass die Normalisierung der Groß-/Kleinschreibung für Unicode komplexer ist als die einfache Konvertierung in Klein- oder Großbuchstaben. Sprachen können unterschiedliche Sortierregeln haben, die sich auf die Sortierung von Zeichen auswirken.
Verwenden der Groß-/Kleinschreibung zur Groß-/Kleinschreibung
Um diese Komplexität zu bewältigen, können Sie die Groß-/Kleinschreibung mithilfe der Groß-/Kleinschreibung implementieren , wodurch sichergestellt wird, dass Zeichen mit unterschiedlichen Groß- und Kleinschreibungsformen (z. B. „a“, „A“) als gleichwertig behandelt werden. Moderne Browser unterstützen hierfür native Funktionen.
Hier ein Beispiel:
<code class="javascript">caseFoldNormalize = function (s) { return s.normalize('NFKC').toLowerCase().toUpperCase().toLowerCase(); };</code>
Dieses Beispiel konvertiert die Zeichenfolge s in die vollständig normalisierte Version, wobei Groß- und Kleinschreibung ignoriert wird.
Von Mithilfe der Sortierung und Normalisierung ohne Berücksichtigung der Groß- und Kleinschreibung können Sie Daten in Cloud Firestore effektiv ohne Berücksichtigung der Groß- und Kleinschreibung sortieren und so eine konsistente Datenreihenfolge unabhängig von Groß- und Kleinschreibung gewährleisten.
Das obige ist der detaillierte Inhalt vonWie implementiert man die Sortierung ohne Berücksichtigung der Groß-/Kleinschreibung mit der Abfrage von Cloud Firestore?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!