logo

SUBSTRING_INDEX Funcția în SQL

Funcția șir SUBSTRING_INDEX arată toate caracterele înaintea simbolului specific din șirul dat.

Sintaxa funcției șir SUBSTRING_INDEX

Sintaxa 1: Această sintaxă folosește SUBSTRING_INDEX cu numele coloanei tabelului SQL:

 SELECT SUBSTRING_INDEX(Column_Name, symbol, starting_position) AS Alias_Name FROM Table_Name; 

În sintaxă, trebuie să specificăm numele acelei coloane pe care dorim să realizăm funcția șir SUBSTRING_INDEX.

Sintaxa 2: Această sintaxă folosește funcția SUBSTRING_INDEX cu șirul:

 SELECT SUBSTRING_INDEX(Original_String, symbol, starting_position); 

Exemple de funcție șir SUBSTRING_INDEX

Exemplul 1: Următoarea interogare SELECT arată cele patru caractere înainte de simbolul dat în cuvântul original JAVA^TPOINT:

iterați harta în java

SELECTARE SUBSTRING_INDEX( 'JAVA^TPOINT', '^', 1) AS SUBSTRING_INDEX_4_caractere;

Ieșire:

SUBSTRING_INDEX_4_caractere
JAVA

Exemplul 2: Următoarea interogare SELECT arată cele 20 de caractere SUBSTRING_INDEX din șirul dat:

exemple de programare python
 SELECT SUBSTRING_INDEX( 'JAVATPOINT is a. good website', '.', 1 ) AS SUBSTRING_INDEX_before.symbol; 

Ieșire:

SUBSTRING_INDEX_before.simbol
JAVATPOINT este un

Exemplul 3: Următoarea interogare SELECT arată cele 5 caractere de la a treia poziție la simbolul dat în cuvântul „felicitari” dat:

 SELECT SUBSTRING_INDEX( '[email protected]', '@', 3) AS SUBSTRING_INDEX_before@symbol; 

Ieșire:

SUBSTRING_INDEX_before@symbol
PLACE

Exemplul 4: Următoarea interogare SELECT arată cele 20 de caractere de la a cincea poziție la simbolul dat din șirul dat:

 SELECT SUBSTRING_INDEX('New Delhi is the capital# of India', '#', 5) AS SUBSTRING_INDEX_5_characters; 

Ieșire:

javascript onload
SUBSTRING_INDEX_before#simbol
Delhi este capitala

Exemplul 6: Acest exemplu folosește funcția SUBSTRING_INDEX cu tabelul în limbajul de interogare structurat.

Pentru a înțelege funcția SUBSTRING_INDEX cu SQL, trebuie să creăm mai întâi tabelul SQL folosind instrucțiunea CREATE. Sintaxa pentru crearea noului tabel în baza de date SQL este următoarea:

 CREATE TABLE table_name ( First_Column_of_table Data Type (character_size of 1st Column), Second_Column_of_table Data Type (character_size of the 2nd column ), Third_Column_of_table Data Type (character_size of the 3rd column), ... Last_Column_of_table Data Type (character_size of the Nth column) ); 

Următoarea instrucțiune CREATE creează Student_Marks masa:

 CREATE TABLE Student_Marks ( Student_ID INT NOT NULL PRIMARY KEY, Student_First_Name VARCHAR (100), Student_Middle_Name VARCHAR (100), Student_Last_Name VARCHAR (100), Student_Class INT NOT NULL, Student_City Varchar(120), Student_State Varchar (80), Student_Marks INT ); 

Interogările de mai jos INSERT inserează evidențele facultăților facultăților în Student_Marks masa:

 INSERT INTO Student_Marks (Student_ID, Student_First_Name, Student_Middle_Name, Student_Last_Name, Student_Class, Student_City, Student_State, Stude.nt_Marks) VALUES (4001, Ama.n, Roy, Sha#rma, 4, Chandigarh, Pun#jab, 88); INSERT INTO Student_Marks (Student_ID, Student_First_Name, Student_Middle_Name, Student_Last_Name, Student_Class, Student_City, Student_State, Student_Marks) VALUES ( 4002, Vish.al, Gurr, Sh#arma, 8, Murthal, Harya#na, 95 ); INSERT INTO Student_Marks (Student_ID, Student_First_Name, Student_Middle_Name, Student_Last_Name, Student_Class, Student_City, Student_State, Student_Marks) VALUES (4007, Raj., singhania, Gupt#a, 6, Ghaziabad, Uttar Pr#adesh, 91); INSERT INTO Student_Marks (Student_ID, Student_First_Name, Student_Middle_Name Student_Last_Name, Student_Class, Student_City, Student_State, Student_Marks) VALUES (4004, Yas.h, Chopra, Singh#ania, 9, Jaipur, Rajasthan#, 85); INSERT INTO Student_Marks (Student_ID, Student_First_Name, Student_Middle_Name, Student_Last_Name, Student_Class, Student_City, Student_State, Student_Marks) VALUES (4011, Vin.ay, Sharma, Roy#, 8, Chandigarh, Punjab#, 94); INSERT INTO Student_Marks (Student_ID, Student_First_Name, Student_Middle_Name, Student_Last_Name, Student_Class, Student_City, Student_State, Student_Marks) VALUES (4006, Man.oj, singhania, Gup#ta, 5, Ghaziabad, Uttar Pr#adesh, 83); INSERT INTO Student_Marks (Student_ID, Student_First_Name, Student_Middle_Name, Student_Last_Name, Student_Class, Student_City, Student_State, Student_Marks) VALUES (4010, Ra.m, Raheem, Gupt#a, 9, Lucknow, Uttar Pra#desh, 89); 

Următoarea instrucțiune SELECT afișează înregistrările introduse ale celor de mai sus Student_Marks masa:

 SELECT * FROM Student_Marks; 

Scolar_Id Prenumele_școlarului Şcolar_Nume_Mijlociu Nume_Școlar Schoolboy_Class Schoolboy_City Scolar_State Scolar_Marks
4001 Un barbat Roy Sha#rma 4 Chandigarh Pun#jab 88
4002 Vish.al Gurr Sh#arma 8 Murthal Harya#na 95
4007 Raj. Singhania Gupt#a 6 Ghaziabad Uttar Pradesh 91
4004 Da.h Chopra Singh#ania 9 Jaipur Rajasthan# 85
4011 Vin.ay Sharma Roy# 8 Chandigarh Punjab# 94
4006 Omule Singhania Gup#ta 5 Ghaziabad Uttar Pra#desh 83
4010 RAM Raheem Gupt#a 9 Lucknow Uttar Pradesh 89

Interogarea 1: Următoarea interogare SELECT utilizează funcția SUBSTRING_INDEX cu coloana Student_First_Name din tabelul Student_Marks de mai sus:

 SELECT Student_First_Name, SUBSTRING_INDEX(Student_First_Name, ., 1) AS SUBSTRING_INDEX_before.symbol FROM Student_Marks; 

Această instrucțiune SQL arată caracterele de la prima poziție până la simbolul # din prenumele fiecărui elev.

c# datetime

Ieșire:

str.inlocuire in java
Prenume_Student SUBSTRING_INDEX_before.simbol
Un barbat Sau
Vish.al venire
Raj. Raj
Da.h Plastic
Vin.ay vino
Omule Om
RAM Soare

Interogarea 2: Următoarea interogare SELECT utilizează funcția SUBSTRING_INDEX cu coloana Student_Last_Name din tabelul Student_Marks de mai sus:

 SELECT Student_Last_Name, SUBSTRING_INDEX(Student_Last_Name, #, 1) AS SUBSTRING_INDEX_before#symbol FROM Student_Marks; 

Această instrucțiune SQL arată caracterele de la prima poziție până la simbolul # din numele de familie al fiecărui elev.

Ieșire:

Nume_Student SUBSTRING_INDEX_before#simbol
Sha#rma Băutură
Sh#arma SH
Gupt#a Gupt
Singh#ania Singh
Roy# Roy
Gup#ta Gup
Gupt#a Gupt

Interogarea 3: Următoarea interogare SELECT utilizează funcția SUBSTRING_INDEX cu coloana Student_Address din tabelul Student_Marks de mai sus:

 SELECT Student_State, SUBSTRING_INDEX(Student_State, @, 2) AS SUBSTRING_INDEX_@symbol FROM Student_Marks; 

Această instrucțiune SQL arată caracterele de la a doua poziție până la simbolul dat în starea fiecărui elev.

Ieșire:

Student_State SUBSTRING_INDEX_@simbol
Pun@jab A
Harya@na arya
Uttar Pra@adesh ttar Pr
Rajasthan@ loc de timp
Punjab@ unjab
Uttar Pradesh@desh ttar Pra
Uttar Pra@adesh ttar Pr