logo

SQL Server SUBSTRING()-Funktion

SUBSTRING-Funktion in SQL Server wird verwendet, um einen Teilstring aus einem String zu extrahieren, beginnend an einer angegebenen Position und mit einer optionalen Länge.

Dies ist sehr nützlich, wenn Sie einen bestimmten Teil einer Zeichenfolge zur weiteren Verarbeitung oder Analyse extrahieren müssen.



Die SQL SUBSTRING-Funktion funktioniert auch in Azure SQL-Datenbank , Azure SQL Data Warehouse , Und Paralleles Data Warehouse .

Syntax

Die Syntax der SQL SUBSTRING-Funktion lautet:

SUBSTRING(input_string, start, length);



Parameter:

  • Eingabezeichenfolge – Es kann sich um einen Zeichen-, Binär-, Text- oder Bildausdruck handeln.
  • Start - Es handelt sich um eine Ganzzahl, die die Position definiert, an der die zurückgegebene Teilzeichenfolge beginnt. Die erste Position in der Zeichenfolge ist 1.
  • Länge - Es handelt sich um eine positive Ganzzahl, die die Anzahl der Zeichen angibt, die von der Teilzeichenfolge zurückgegeben werden sollen.
  • Kehrt zurück - Es gibt eine Teilzeichenfolge mit einer angegebenen Länge zurück, beginnend an einer Position in einer Eingabezeichenfolge.

Beispiel für die SQL Server SUBSTRING()-Funktion

Schauen wir uns einige Beispiele der SUBSTRING()-Funktion in SQL an und verstehen, wie man sie in SQL Server verwendet.

Beispiel für eine SQL SUBSTRING-Funktion

In diesem Beispiel verwenden wir die SUBSTRING-Funktion in SQL Server.

Abfrage:



  SELECT SUBSTRING  ('techcodeview.com',1,5);>

Ausgabe:

Beispiel für eine Teilstring-Funktion

Regeln für die Verwendung der SUBSTRING()-Funktion in SQL

  1. Alle drei Argumente sind in der SQL-Funktion substring() erforderlich. Wenn die Startposition die maximale Anzahl von Zeichen im Ausdruck überschreitet, gibt die SQL Server-Funktion substring() nichts zurück.
  2. Die Gesamtlänge kann die maximale Zeichenlänge der Originalzeichenfolge überschreiten.
  3. In diesem Fall ist die resultierende Teilzeichenfolge die gesamte Zeichenfolge von der Startposition des Ausdrucks bis zum Endzeichen des Ausdrucks.

SUBSTRING()-Funktion mit Literal-Strings

Die Verwendung der SQL SUBSTRING-Funktion mit Literalzeichenfolgen ist sehr einfach. Geben Sie einfach die gewünschten Werte in die Syntax ein.

Java-Webdienste

Beispiel für eine SUBSTRING()-Funktion mit Literalzeichenfolgen

Betrachten Sie diesen SQL SUBSTRING-Funktionsbefehl:

  SELECT SUBSTRING (  'SQL In Geeksforgeeks', 7, 18  ) AS   ExtractString>

Es wird die Originalzeichenfolge „SQL In Geeksforgeeks“ nehmen und eine Teilzeichenfolge extrahieren, die mit dem 7. Zeichen beginnt und eine Länge von 18 Zeichen hat. Eine neue Spalte mit dem Alias ​​ExtractString wird zusammen mit der resultierenden Teilzeichenfolge zurückgegeben.

Um einen Abschnitt einer Zeichenfolge basierend auf einer vorgegebenen Startposition und Länge zu extrahieren, wird die SUBSTRING-Funktion verwendet. Der ursprüngliche String wird als erstes Argument der Funktion übergeben und das zweite Argument gibt das Startzeichen an, in diesem Fall das siebte. Das dritte Argument, das in diesem Fall 18 Zeichen umfasst, gibt an, wie lange der Teilstring extrahiert werden soll.

Der Zweck dieser SQL-Abfrage besteht darin, einen bestimmten Teil einer längeren Zeichenfolge zu extrahieren, der für weitere Analysen oder Berichte benötigt wird. Dies kann nützlich sein, wenn wir mit großen Datensätzen arbeiten, bei denen wir bestimmte Informationen aus einer langen Textfolge extrahieren und bearbeiten müssen.

Ausgabe

substring()-Funktion mit Literal-Strings-Beispielausgabe

SUBSTRING()-Funktion mit Tabellenspalten

Um die Funktion SUBSTRING() mit Tabellenspalten zu verwenden, erstellen wir zunächst eine Tabelle Spielerdetails , die drei Spalten hat: PlayerId, PlayerName und City. Da die PlayerId-Spalte als Primärschlüssel festgelegt ist, hat jede Zeile in der Tabelle eine andere PlayerId als Kennung.

Nachdem die Tabelle erstellt wurde, werden der Tabelle mithilfe der INSERT INTO-Anweisung zehn Datenzeilen hinzugefügt. Während die Spalte „PlayerId“ automatisch als eindeutige Kennung für jede Zeile generiert wird, sind in den Spalten „PlayerName“ und „City“ Werte für jede Zeile angegeben.

Abfrage :

  CREATE TABLE  Player_Details (  PlayerId INT  PRIMARY KEY  ,  PlayerName VARCHAR(50),  City VARCHAR(50) );   INSERT INTO  Player_Details (PlayerId, PlayerName, City)   VALUES    (1,'John', 'New York'),  (2,'Sarah', 'Los Angeles'),  (3,'David', 'Chicago'),  (4,'Emily', 'Houston'),  (5,'Michael', 'Phoenix'),  (6,'Ava', 'Philadelphia'),  (7,'Joshua', 'San Antonio'),  (8,'Sophia', 'San Diego'),  (9,'Daniel', 'Dallas'),  (10,'Olivia', 'San Jose');>

Ausgabe:

Objekt zu jsonobject Java

Tabelle erstellt

Beispiel für eine SUBSTRING()-Funktion mit Tabellenspalten

In diesem Beispiel verwenden wir die Funktion SUBSTRING() für eine Tabellenspalte.

Abfrage

10 ml bis oz
  SELECT SUBSTRING  (PlayerName, 1, 3)  AS   ExtractString   FROM   Player_Details;>

Ausgabe

Funktion substring() mit Beispielausgabe für Tabellenspalten

Die PlayerName-Spalte in der Unterabfrage empfängt die SUBSTRING-Funktion, die die ersten drei Zeichen jedes Namens auswählt. Das Ergebnis dieser Teilzeichenfolgenoperation besteht darin, die PlayerName-Spalte aus der Unterabfrage in einer neuen Spalte mit dem Alias ​​ExtractString zurückzugeben.

Verwenden von SUBSTRING für verschachtelte Abfragen

Angenommen, Sie möchten die SUBSTRING-Funktion für eine verschachtelte Abfrage innerhalb der Tabelle „player_Details“ verwenden, könnten Sie den folgenden SQL-Code verwenden

Abfrage

  SELECT SUBSTRING  (subquery.PlayerName, 1, 3)  AS   ShortenedName, subquery.City   FROM   (   SELECT   *   FROM   Player_Details   WHERE   City = 'New York' )  AS   subquery;>

Ausgabe

Bild

Um alle Zeilen aus der Tabelle „Player_Details“ auszuwählen, in denen die Spalte „Stadt“ New York entspricht, erstellt diese SQL-Abfrage zunächst eine verschachtelte Abfrage. Eine abgeleitete Tabelle oder Unterabfrage, die die Ergebnisse dieser verschachtelten Abfrage enthält, wird dann als Eingabe für die SUBSTRING-Funktion verwendet.

Die PlayerName-Spalte in der Unterabfrage empfängt die SUBSTRING-Funktion, die die ersten drei Zeichen jedes Namens auswählt. Das Ergebnis dieser Teilzeichenfolgenoperation wird dann zusammen mit der Spalte „Stadt“ aus der Unterabfrage in einer neuen Spalte mit dem Alias ​​„ShortenedName“ zurückgegeben.

Wichtige Funktion zur SQL SUBSTRING-Funktion

  • Die Funktion SUBSTRING() extrahiert einen Teilstring aus einem String, beginnend an einer angegebenen Position und mit einer optionalen Länge.
  • Es kann mit Literalzeichenfolgen oder Spalten in einer Tabelle verwendet werden.
  • Der LINKS() Und RECHTS() Funktionen sind auch Implementierungen der SUBSTRING()-Funktion.
  • Die Verwendung von SUBSTRING() in der WHERE-Klausel wirkt sich negativ auf die Abfrageleistung aus, da die Funktion für jede Zeile ausgeführt wird.