Am 14. September 2017 haben wir eine überarbeitete Fassung unserer Datenschutzrichtlinie veröffentlicht. Wenn Sie video2brain.com weiterhin nutzen, erklären Sie sich mit diesem überarbeiteten Dokument einverstanden. Bitte lesen Sie es deshalb sorgfältig durch.

SQL: Datenbankabfragen beschleunigen

Unterschiede zwischen NULL-Werten und der IsNull-Funktion

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
Der Unterschied zwischen der IsNull()-Funktion und ihrem SQL-Pendant ist eklatant. Sie sollten daher unbedingt darauf achten, immer die schnellere Variante zu nutzen.

Transkript

Sie müssen im Zusammenhang mit Abfragen mit Sicherheit irgendwann einmal NULL-Werte überprüfen. Also Felder, die leer sind. Na ja, das ist nicht besonders schwer. Dann vergleichen Sie in der Zahl, ob irgendwas drin steht. Das tut es hier jetzt nicht. Aber das ist unerheblich. Es müssen alle Felder angeguckt werden. Aber sehen Sie den Unterschied zwischen diesen beiden Abfragen? Dieser und der Folgenden. Beide prüfen auf NULL. Mit dem Unterschied, dass diese Abfrage die SQL-Syntax isNull einsetzt. Und diese Abfrage eine Funktion isNull einsetzt. Na, das klingt ja nicht so unterschiedlich. Aber schauen Sie schon einmal hier. Auch wenn die Messwerte nicht mit den übereinstimmen, die ich sonst überall zeige, weil es eben eine andere Hardware ist. Diese Abfrage ist nicht messbar. Das SQL isNull ist so schnell, dass es nicht messbar ist. Und die Funktion isNull, die ist messbar. Deutlich messbar. Das ist eine halbe Sekunde für die gleiche Menge, das gleiche Ergebnis und eigentlich auch die gleiche Frage. Das ist ein Unterschied, der wirklich als enorm bezeichnet werden muss. Also da haben wir schon einmal die erste Idee. Benutzen Sie nicht die isNull-Funktion, wenn es sich irgendwie vermeiden lässt, sondern benutzen Sie echtes SQL mit isNull. Also bei der Analyse der NULL-Werte ist schon ganz klar, die isNull-Funktion ist nicht nur langsam, sondern die ist unglaublich langsam. Die SQL-Schreibweise isNull ist bedeutend schneller. In Messwerten: Knappe 300 ms für die Funktion. Kaum messbar für die SQL-Version. Und das heißt, eine enorme Beschleunigung auf weniger, deutlich weniger als 1 % der ursprünglichen Laufzeit. Genauer gesagt können Sie sagen, es verlängert sich entweder auf 300 %, oder auf 0,3 % Beschleunigung. Das ist nicht mehr ganz so krass, wenn wir wieder das Problem mit den Nicht-Null-Werten angucken. NotIsNull, bzw. NotIsNull als SQL-Syntax. Das bedeutet: In der Funktions-Version knappe 500 ms. In der SQL-Version immer noch knappe 350 ms. Das ist eine fühlbare Beschleunigung auf 73 %. Aber insgesamt natürlich, der NOT-Operator ist immer ein Problem. Insgesamt durchaus langsam. Aber wenn schon langsam, dann wenigstens weniger langsam. Und wenn Sie noch einmal im Vergleich angucken. Das isNull, das reine SQL isNull einmal positiv - Ich will alle Nadelwerte sehen. Und einmal negativ - Ich will die gefüllten Zellen, die NotIsNull-Werte sehen. Dann kommt das reine isNull auf kaum messbare unter 1 ms. Das Gegenstück dazu bleibt bei seinen 343 ms. Das heißt, es ist eine auf gigantische Verschlechterung auf 34.300 %. Das heißt, es ist fast 345 mal langsamer. Das sollten Sie also vermeiden. Nicht nur die isNull-Funktion ist problematisch, sondern hier auch wieder der NOT-Operator ist erheblich problematisch.

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!