T-SQL Ninja #49

CHOOSE

Was ist CHOOSE? CHOOSE gehört sicher zu den eher unbekannteren Funktionen im SQL Server, dabei fristet diese Funktion zu Unrecht ein Schattendasein, denn sie kann euch viele lästige Abfragen deutlich erleichtern. CHOOSE könnt ihr oft verwenden, um lange, komplexe CASE–WHEN-Anweisungen zu vereinfachen, nämlich immer dann, wenn es darum geht auf Basis einer Zahl ein Element aus einer Liste auszuwählen, […]

T-SQL Ninja #48

DATEDIFF

Was tut DATEDIFF? Heute widmen wir uns einer der bekanntesten und wirklich häufig verwendeten Funktionen im SQL Server: DATEDIFF. Die DATEDIFF-Funktion gehört zu den Funktionen für Zeit-Objekte, mit ihr könnt ihr die Zeit zwischen zwei Datetime-Zeitstempeln berechnen. Dabei steht es euch frei, den Abstand in Jahren, Monaten, Tagen, Stunden, Minuten, Sekunden, Millisekunden oder Nanosekunden zu bestimmen, einzig […]

T-SQL Ninja #47

COMPRESS

Was tut COMPRESS? Wenn ihr in einer Datenbank eine größere Menge an Daten liegen habt, die ihr nicht mehr benötigt, beispielsweise von gelöschten Datensätzen, die ihr archivieren möchtet, aber die in eurer Anwendung nicht mehr verwendet werden, dann wäre es doch schön, wenn diese Daten in komprimierter Form hinterlegt wären. Wie ihr das mit Hilfe […]

T-SQL Ninja #45

BULK INSERT

Was ist BULK INSERT? Wenn ihr größere Datenmengen in eine Datenbank bekommen wollt, lautet die Wunderwaffe im SQL Server-Umfeld natürlich SQL Server Integration Services. Wenn ihr das für eine SQL Datenbank in der Cloud machen möchtet, habt ihr erstmal keine SSIS Engine verfügbar, dafür müsst ihr eine Azure Data Factory mit einer Integration Services Runtime […]

T-SQL Ninja #44

MAXDOP

Was ist MAXDOP? Euch ist beim Ansehen von Ausführungsplänen im SQL Server sicher schon einmal aufgefallen, dass immer wieder an bestimmten Operationen zwei kleine Pfeile auf gelbem Grund auftreten (im SQL Server Management Studio) und die Operation „Parallelism (Gather Streams)“. Was das bedeutet ist, vereinfacht gesagt, dass der SQL Server an einigen Stellen entscheidet, bestimmte […]

T-SQL Ninja #43

SP_RENAME

Was ist SP_RENAME? Wenn ihr in eurer Datenbank Objekte habt, die ihr umbenennen möchtet, dann könnt ihr im SQL Server Management Studio mit Rechtsklick auf das Objekt eine Umbenennung durchführen. Wenn ihr das Umbenennen aber ein wenig kontrollierter und am besten noch verteilbar machen möchtet, dann kommt ihr um das Skripten des Vorgangs nicht herum […]

T-SQL Ninja #42

AT TIME ZONE

Was ist AT TIME ZONE? Wer kennt das nicht? Ihr seid in Seeheim Jugendheim und wollt euren Ninja-Kollegen in Kyoto anrufen, wisst aber gar nicht, wie spät es bei ihm gerade ist. Ihr könnt die lokale Zeit in Kyoto natürlich googeln, allerdings könnt ihr die Zeit in Tokyo Standard Time auch im SQL Server abfragen. […]

T-SQL Ninja #41

STRING_ESCAPE

Was tut STRING_ESCAPE? Ihr habt hier nun schon einige Funktionen zur Manipulation von Zeichenketten (Strings) kennengelernt. In diese Reihe passt auch STRING_ESCAPE. Die STRING_ESCAPE-Funktion ist eine Funktion, die bei einer Zeichenkette Sonderzeichen ersetzt, damit diese Zeichenkette an anderer Stelle verwendet werden kann. Ein klassisches Beispiel für das Escapen von Zeichenketten ist, dass ihr um SQL Injection-Attacken zu […]

T-SQL Ninja #40

STRING_SPLIT

Was tut STING_SPLIT? In den Wochen hattet ihr hier einige Möglichkeiten kennengelernt, um kommaseparierte Listen in SQL zu erzeugen, neben STUFF in Kombination mit SELECT FOR XML und STRING_AGG auch CONCAT_WS. In dieser Woche möchten wir den umgekehrten Weg gehen und eine Zeichenkette, die kommaseparierte Werte enthält in ihre Bestandteile zerlegen. Seit dem SQL Server 2016 gibt es in der relationalen Datenbankengine […]