logo

Funkce SQL Server SUBSTRING().

Funkce SUBSTRING na serveru SQL se používá k extrahování podřetězce z řetězce počínaje zadanou pozicí as volitelnou délkou.

Je to velmi užitečné, když potřebujete extrahovat určitou část řetězce pro další zpracování nebo analýzu.



Funkce SQL SUBSTRING také funguje Azure SQL Database , Azure SQL Data Warehouse , a Paralelní datový sklad .

Syntax

Syntaxe funkce SQL SUBSTRING je:

SUBSTRING(vstupní_řetězec, začátek, délka);



Parametry:

  • vstupní_řetězec – Může to být znakový, binární, textový nebo obrázkový výraz.
  • Start - Je to celé číslo definující umístění, kde začíná vrácený podřetězec. První pozice v řetězci je 1.
  • Délka – Je to kladné celé číslo, které určuje počet znaků, které mají být vráceny z podřetězce.
  • Vrácení zboží – Vrací podřetězec se zadanou délkou počínaje umístěním ve vstupním řetězci.

Příklad funkce SQL Server SUBSTRING().

Podívejme se na některé příklady funkce SUBSTRING() v SQL a pochopíme, jak ji používat na serveru SQL.

Příklad funkce SQL SUBSTRING

V tomto příkladu používáme funkci SUBSTRING v SQL Server.

Dotaz:



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

Výstup:

příklad funkce podřetězec

Pravidla pro použití funkce SUBSTRING() v SQL

  1. Všechny tři argumenty jsou vyžadovány ve funkci SQL substring(). Pokud počáteční pozice překročí maximální počet znaků ve výrazu, funkce SQL Server substring() nevrátí nic.
  2. Celková délka může přesáhnout maximální délku znaků původního řetězce.
  3. V tomto případě je výsledným podřetězcem celý řetězec od počáteční pozice výrazu po znak konce výrazu.

Funkce SUBSTRING() s doslovnými řetězci

Použití funkce SQL SUBSTRING s doslovnými řetězci je velmi snadné, stačí zadat požadované hodnoty do syntaxe.

java mvc

Příklad funkce SUBSTRING() s řetězci liter

Zvažte tento příkaz funkce SQL SUBSTRING:

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

Vezme původní řetězec ‚SQL In Geeksforgeeks‘ a extrahuje podřetězec začínající 7. znakem a extrahuje délku 18 znaků. Spolu s výsledným podřetězcem bude vrácen nový sloupec s aliasem ExtractString.

K extrakci části řetězce na základě předem určené počáteční pozice a délky se používá funkce SUBSTRING. Původní řetězec je předán jako první argument funkce a druhý argument určuje počáteční znak, v tomto případě sedmý. Třetí argument, který má v tomto případě 18 znaků, určuje, jak dlouho má být podřetězec extrahován.

python // operátor

Účelem použití tohoto SQL dotazu je extrahovat určitou část delšího řetězce, která je potřebná pro další analýzu nebo vytváření sestav. To může být užitečné při práci s velkými datovými sadami, kde potřebujeme extrahovat a manipulovat s konkrétními informacemi z dlouhého řetězce textu.

Výstup

funkce substring() s ukázkovým výstupem doslovných řetězců

Funkce SUBSTRING() se sloupci tabulky

Chcete-li použít funkci SUBSTRING() se sloupci tabulky, nejprve vytvoříme tabulku Player_Details , který má tři sloupce: ID hráče, Jméno hráče a Město. Vzhledem k tomu, že sloupec PlayerId je určen jako primární klíč, každý řádek v tabulce bude mít jako svůj identifikátor jiný PlayerId.

Po vytvoření tabulky se pomocí příkazu INSERT INTO přidá do tabulky deset řádků dat. Zatímco sloupec PlayerId bude automaticky generován jako jedinečný identifikátor pro každý řádek, sloupce PlayerName a City mají hodnoty specifikované pro každý řádek.

dotaz:

  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');>

Výstup:

tabulka vytvořena

Příklad funkce SUBSTRING() se sloupci tabulky

V tomto příkladu použijeme funkci SUBSTRING() na sloupec tabulky.

Dotaz

  SELECT SUBSTRING  (PlayerName, 1, 3)  AS   ExtractString   FROM   Player_Details;>

Výstup

funkce substring() s příkladem výstupu sloupců tabulky

Sloupec PlayerName v poddotazu přijímá funkci SUBSTRING, která vybírá první tři znaky každého jména. Výsledkem této operace podřetězce je vrácení sloupce PlayerName z poddotazu v novém sloupci s aliasem ExtractString.

Použití SUBSTRING ve vnořených dotazech

Za předpokladu, že chcete použít funkci SUBSTRING na vnořený dotaz v tabulce player_Details, můžete použít následující kód SQL

tring to int

Dotaz

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

Výstup

img

Aby bylo možné vybrat všechny řádky z tabulky Player_Details, kde se sloupec Město rovná New Yorku, tento dotaz SQL nejprve vytvoří vnořený dotaz. Odvozená tabulka nebo poddotaz, který obsahuje výsledky tohoto vnořeného dotazu, se pak použije jako vstup pro funkci SUBSTRING.

Sloupec PlayerName v poddotazu přijímá funkci SUBSTRING, která vybírá první tři znaky každého jména. Výsledek této operace podřetězce je pak vrácen spolu se sloupcem Město z poddotazu v novém sloupci s aliasem ShortenedName.

Důležitá funkce O funkci SQL SUBSTRING

  • Funkce SUBSTRING() extrahuje podřetězec z řetězce počínaje zadanou pozicí as volitelnou délkou.
  • Lze jej použít s doslovnými řetězci nebo sloupci v tabulce.
  • The VLEVO, ODJET() a ŽE JO() funkce jsou také implementací funkce SUBSTRING().
  • Použití SUBSTRING() v klauzuli WHERE negativně ovlivňuje výkon dotazu, protože funkce bude provedena pro každý řádek.