logo

Funció SUBSTR en SQL

La funció de cadena SUBSTR a Structured Query Language mostra els caràcters o subcadenes del valor d'índex específic de la cadena original. SQL també us permet utilitzar la funció SUBSTR amb les taules.

Sintaxi de la funció de cadena SUBSTR

Sintaxi 1: Aquesta sintaxi utilitza la funció SUBSTR amb el nom de columna de la taula SQL:

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

En aquesta sintaxi, hem de definir el nom d'aquesta columna sobre la qual volem executar la funció SUBSTR(). Aquí, el paràmetre Length_of_string és opcional. Si s'omet, aquesta funció extreu tota la cadena del valor de l'índex inicial.

Sintaxi 2: Aquesta sintaxi utilitza la funció SUBSTR amb la cadena:

 SELECT SUBSTR(Original_String, Starting_Index_value, Length_of_string); 

Sintaxi 2: Aquesta sintaxi utilitza la funció SUBSTR amb un sol caràcter:

nombre de palíndrom
 SELECT SUBSTR(String, Starting_Index_value, 1); 

Exemples de funció de cadena SUBSTR

Exemple 1: La següent consulta SELECT mostra els caràcters dels 17thposició de la cadena donada.

 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. 

Sortida:

formatador de cadenes
 website for professionals 

Exemple 2: La següent consulta SELECT mostra els caràcters del -17thposició de la cadena donada:

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

Aquesta consulta SQL mostra els cinc caràcters dels darrers 17thposició de la corda.

Sortida:

 website for professionals 

Exemple 3: La següent consulta SELECT mostra tots els caràcters del 5thposició de la corda.

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

Sortida:

 Delhi IS the Capital OF India 

Exemple 4: La consulta SELECT següent mostra el caràcter únic del 8thposició de la corda.

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

Sortida:

 n 

Exemple 5: aquest exemple utilitza la funció SUBSTR amb la taula SQL

ascii d'a en java

En aquest exemple, crearem una taula nova sobre la qual volem executar la funció SUBSTR.

En aquest exemple, hem de crear una nova taula SQL a través de la qual executarem la funció Concat() en columnes. La sintaxi per crear la nova taula SQL s'esmenta al bloc següent:

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

La següent instrucció CREATE crea el Marques_estudiant taula:

jquery fent clic
 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 ); 

Les consultes INSERIR a continuació insereixen els registres de les facultats universitàries al Marques_estudiant taula:

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

La següent instrucció SELECT mostra els registres inserits de l'anterior Marques_estudiant taula:

 SELECT * FROM Student_Marks; 

ID_estudiant Nom_de_estudiant Nom_ Mitjà_Estudiant Cognom_de_estudiant Alumne_Classe Ciutat_estudiant Estat_estudiant Marques_estudiant
4001 Caixa forta Roy Sharma 4 Chandigarh Panjab 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 Panjab 94
4006 Manoj Singhania Gupta 5 Ghaziabad Uttar Pradesh 83
4010 Ram Raheem Gupta 9 Lucknow Uttar Pradesh 89

Consulta 1: La següent consulta SELECT utilitza la funció SUBSTR amb la columna Student_Last_Name de la taula anterior Student_Marks:

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

Aquesta instrucció SQL mostra els quatre caràcters després del 2ndposició del Cognom de cada alumne.

Sortida:

Cognom_de_estudiant SUBSTR_2_4
Sharma dany
Sharma dany
Gupta upta
Singhania Anglès
Roy Ltd
Gupta upta
Gupta upta

Consulta 2: La següent consulta SELECT utilitza la funció SUBSTR amb la columna Student_Last_Name de la taula anterior Student_Marks:

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

Aquesta instrucció SQL mostra els dos caràcters de la tercera darrera posició del Cognom de cada estudiant.

seleccioneu sql de diverses taules

Sortida:

Cognom_de_estudiant SUBSTR_-3_2
Sharma rm
Sharma rm
Gupta pt
Singhania en
Roy Ro
Gupta pt
Gupta pt