Unsere Datenschutzrichtlinie wird in Kürze aktualisiert. Bitte sehen Sie sich die Vorschau an.

SQL: Datenbankabfragen beschleunigen

Zeitkritische Filter-Operatoren im Überblick

Testen Sie unsere 2017 Kurse

10 Tage kostenlos!

Jetzt testen Alle Abonnements anzeigen
Sehen Sie in diesem Überblick, an welchen Stellen die Filterung nach Zahlen oder Texten zeitkritisch sein kann und wie Sie solche Probleme vermeiden.

Transkript

Ich möchte Ihnen die verschiedenen Operatoren noch einmal im Überblick vorstellen. Was Sie jeweils an Zeitverlusten einkalkulieren müssen und zwar immer im Vergleich zu der Abfrage ohne Filter. Und Sie sehen es an den 16 ms schon. Das ist ohne Index auf das Feld. Wenn Sie mit Gleich einer Zahl vergleichen, dann ist es schon ungefähr schon das zehnfache, wie lagen das dauert. Und es ist egal, ob Sie gleich oder kleiner oder größer vergleichen. Es bleibt im gleichen Bereich. Aber krass schlechter wird es, wenn Sie ungleich einer Zahl vergleichen. Das gibt hier also schon einmal eine gelbe Markierung. Ungleich sollten Sie vermeiden. Wenn Sie einen Index auf dieses Zahlenfeld setzen, dann verbessern sich die zweiten und dritten, die eine gleich, oder Kleiner-Größer-Filterung haben, massiv. Alle drei sind dann mehr oder weniger im nicht mehr messbaren Bereich. Aber der Ungleich-Operator sorgt für massive Zeitverluste. Auch mit einem Index. Dann kommen die Textoperatoren. Also wie der im Vergleichen der normalen Abfrage. Gleich einem Text - eine fühlbare Verschlechterung. Ungleich einem Text, und es ist egal, ob Sie NOT oder Ungleich < schreiben - eine gerade zu katastrophale Verschlechterung. Auch wenn Sie einen Index auf dieses Textfeld setzen. Diese beiden können wir schon einmal orange markieren. Nur die Gleichheit-Abfrage ist dann im kaum noch sichtbaren Bereich deutlich schneller. Aber der Ungleich-, oder der Not-Operator ist katastrophal langsam. Das ist ähnlich im Like-Bereich. Also die Ähnlichkeits-Operatoren. Wenn Sie Like-Text vergleichen, ohne ein Sternchen zu benutzen, das ist kein wesentlicher Unterschied zu Like-Text mit einem Sternchen. Jedenfalls wenn es dahinter steht. Wenn es davor steht, sind wir wieder in der Nähe einer Katastrophe. Also richtig langsam. Und mit Abstand der schlechteste Kandidat ist ein Not-Like. Das ist so schlecht im Vergleich, da reichen keine gelben, oder orangenen Markierungen mehr aus. Das gibt schon eine rote Markierung. Sie sollten also, wenn irgendwie möglich, auf einen Operator verzichten, der Not Like einen Text-Vergleich macht. Auch wenn Sie einen Index auf dieses Text-Feld setzten, was man natürlich auf jeden Fall tun sollte, rettet das nicht mehr ganz viel. Erstaunlicherweise wird der Like "Text" Sternchen dahinter Vergleich deutlich schneller. Und ohne Filter wird diese Abfrage natürlich im kaum messbaren Bereich unter 1 ms sein. Kurz gesagt, auf jeden Fall einen Index. Das rettet ganz viel. Aber beim LIKE mit vorangehendem Sternchen und allen voran, der NOT bzw. Ungliche Operator ist mit Abstand der schlechteste.

SQL: Datenbankabfragen beschleunigen

Entdecken Sie, wo das Beschleunigungspotenzial für SQL-Datenbanken liegt und lernen Sie die Rezepte für bessere Performance.

2 Std. 15 min (39 Videos)
Derzeit sind keine Feedbacks vorhanden...
 
Exklusiv für Abo-Kunden
Erscheinungsdatum:25.03.2015

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!