sql >> Database >  >> RDS >> Sqlserver

Hoe een bepaald aantal tekens links of rechts van een tekenreeks in SQL Server te selecteren?

Als je ooit merkt dat je alleen het eerste deel van een tekenreeks wilt, of het laatste deel ervan, kan dit artikel helpen.

Dit artikel is specifiek voor SQL Server, maar de functionaliteit is vrij algemeen voor de meeste/alle databasebeheersystemen, om nog maar te zwijgen van de meeste programmeertalen.

Als u met SQL Server werkt, kunt u de T-SQL LEFT() . gebruiken en RIGHT() functies om een ​​willekeurig aantal tekens links of rechts van een tekenreeks te retourneren.

Syntaxis

De officiële syntaxis voor beide functies gaat als volgt:

RIGHT ( character_expression , integer_expression )
LEFT ( character_expression , integer_expression )

Waar character_expression is de string, en integer_expression is het aantal tekens dat u uit die tekenreeks wilt retourneren.

Voorbeeld

Hier is een voorbeeld van het selecteren van de 5 meest linkse karakters uit een string:

SELECT LEFT('marshmallow', 5);

Resultaat:

marsh

En hier is een voorbeeld van het selecteren van de 5 meest rechtse karakters uit dezelfde string:

SELECT RIGHT('marshmallow', 5);

Resultaat:

allow

Databasevoorbeeld

Bij het gebruik van SQL Server werk je natuurlijk vooral met data in een database. Hier is een voorbeeld van het gebruik van de LEFT() en RIGHT() functies op gegevens die zijn geretourneerd uit een database.

LINKS()

USE Music;
SELECT TOP 5
    AlbumName AS Original, 
    LEFT(AlbumName, 5) AS Modified
FROM Albums;

Resultaat:

Original                Modified
----------------------  --------
Powerslave              Power   
Powerage                Power   
Singing Down the Lane   Singi   
Ziltoid the Omniscient  Zilto   
Casualties of Cool      Casua   

RECHTS()

USE Music;
SELECT TOP 5
    AlbumName AS Original, 
    RIGHT(AlbumName, 5) AS Modified
FROM Albums;

Resultaat:

Original                Modified
----------------------  --------
Powerslave              slave   
Powerage                erage   
Singing Down the Lane    Lane   
Ziltoid the Omniscient  cient   
Casualties of Cool       Cool   


  1. Hoe BIT_LENGTH() werkt in MariaDB

  2. Wat betekent een (+) teken in een Oracle SQL WHERE-clausule?

  3. Evolutie van fouttolerantie in PostgreSQL:synchrone commit

  4. SQL Server ROUND()-functie:waar is het voor en waarom zou het u iets kunnen schelen?