logo

Funcția SUBSTR în SQL

Funcția șir SUBSTR din Structured Query Language arată caracterele sau subșirul din valoarea indexului specific a șirului original. SQL vă permite, de asemenea, să utilizați funcția SUBSTR cu tabelele.

Sintaxa funcției șir SUBSTR

Sintaxa 1: Această sintaxă folosește funcția SUBSTR cu numele coloanei tabelului SQL:

 SELECT SUBSTR(Column_Name, Starting_Index_value, Length_of_string) AS Alias_Name FROM Table_Name; 

În această sintaxă, trebuie să definim numele acelei coloane pe care dorim să executăm funcția SUBSTR(). Aici, parametrul Length_of_string este opțional. Dacă este omisă, atunci această funcție extrage întregul șir din valoarea indexului de pornire.

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

 SELECT SUBSTR(Original_String, Starting_Index_value, Length_of_string); 

Sintaxa 2: Această sintaxă folosește funcția SUBSTR cu un singur caracter:

obiect java
 SELECT SUBSTR(String, Starting_Index_value, 1); 

Exemple de funcție SUBSTR String

Exemplul 1: Următoarea interogare SELECT arată caracterele din cele 17thpoziţia şirului dat.

 SELECT SUBSTR( 'JavaTpoint is a website for professionals', 17, 24); This SQL query returns the 24 characters with spaces after the 17th position in the string. 

Ieșire:

 website for professionals 

Exemplul 2: Următoarea interogare SELECT arată caracterele din -17thpozitia sirului dat:

limbaj groovy
 SELECT SUBSTR( 'JavaTpoint is a website for professionals', -17, 5); 

Această interogare SQL arată cele cinci caractere din ultimele 17thpoziţia şirului.

Ieșire:

 website for professionals 

Exemplul 3: Următoarea interogare SELECT arată toate caracterele din cele 5thpoziţia şirului.

 SELECT SUBSTR( 'New Delhi IS the Capital OF India', 5); 

Ieșire:

nu nul în js
 Delhi IS the Capital OF India 

Exemplul 4: Următoarea interogare SELECT arată un singur caracter din 8thpoziţia şirului.

 SELECT SUBSTR( 'JavaTpoint', 8, 1); 

Ieșire:

 n 

Exemplul 5: Acest exemplu folosește funcția SUBSTR cu tabelul SQL

În acest exemplu, vom crea un nou tabel pe care dorim să executăm funcția SUBSTR.

În acest exemplu, trebuie să creăm un nou tabel SQL prin care vom executa funcția Concat() pe coloane. Sintaxa pentru crearea noului tabel SQL este menționată în blocul de mai jos:

 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, Student_Marks) VALUES (4001, Aman, Roy, Sharma, 4, Chandigarh, Punjab, 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, Vishal, Gurr, Sharma, 8, Murthal, Haryana, 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, Gupta, 6, Ghaziabad, Uttar Pradesh, 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, Yash, Chopra, Singhania, 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, Vinay, 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, Manoj, singhania, Gupta, 5, Ghaziabad, Uttar Pradesh, 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, Ram, Raheem, Gupta, 9, Lucknow, Uttar Pradesh, 89); 

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

comandă grep în linux
 SELECT * FROM Student_Marks; 

Carnet de student Prenume_Student Student_Middle_Nume Nume_Student Student_Class Orașul_Student Student_State Student_Marks
4001 Sigur Roy Sharma 4 Chandigarh Punjab 88
4002 Vishal Gurr Sharma 8 Murthal Haryana 95
4007 Raj Singhania Gupta 6 Ghaziabad Uttar Pradesh 91
4004 Yash Chopra Singhania 9 Jaipur Rajasthan 85
4011 Vinay Sharma Roy 8 Chandigarh Punjab 94
4006 Manoj Singhania Gupta 5 Ghaziabad Uttar Pradesh 83
4010 RAM Raheem Gupta 9 Lucknow Uttar Pradesh 89

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

 SELECT Student_Last_Name, SUBSTR(Student_Last_Name, 2, 4) AS SUBSTR_2_4 FROM Student_Marks; 

Această instrucțiune SQL arată cele patru caractere după 2ndpoziţia Numelui fiecărui elev.

Ieșire:

șir în java boolean
Nume_Student SUBSTR_2_4
Sharma dăuna
Sharma dăuna
Gupta upta
Singhania Engleză
Roy Ltd
Gupta upta
Gupta upta

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

 SELECT Student_Last_Name, SUBSTR(Student_Last_Name, -3, 2) AS SUBSTR_-3_2 FROM Student_Marks; 

Această instrucțiune SQL arată cele două caractere din a treia ultima poziție a Numelui fiecărui student.

Ieșire:

Nume_Student SUBSTR_-3_2
Sharma rm
Sharma rm
Gupta pct
Singhania în
Roy Ro
Gupta pct
Gupta pct