Einzelnen Beitrag anzeigen

idefix2

Registriert seit: 17. Mär 2010
Ort: Wien
1.027 Beiträge
 
RAD-Studio 2009 Pro
 
#3

AW: Firebird-Spalte ohne Groß-Klein-Schreibung sortieren

  Alt 14. Jan 2011, 19:52
Ein Expression index hilft da gar nichts. Ein Index dient prinzipiell dazu, eine Suche bzw die Sortierung zu beschleunigen, aber wenn für eine Query keine case-insensitive Collation angegeben ist, wird der expression Index zwar in der Datenbank vorhanden sein, aber für die Query einfach nicht verwendet werden.

Das Vorhandensein oder nicht Vorhandensein eines Index beeinflusst in keiner Weise die Reihenfolge, in der Datensätze von einer Query geliefert werden.

entweder die Collation der entsprechenden Spalte ist von vorneherein caseinsensitiv, oder man muss bei der Query eine entsprechende collate Klausel angeben. Ist eine Spalte mit einer case insensitiven Collation definiert, dann ist auch ein Index auf die Spalte automatisch case insensitiv, ein expression index auf upper() ist dann unnötig.

Geändert von idefix2 (14. Jan 2011 um 19:56 Uhr)
  Mit Zitat antworten Zitat