logo

Fonction SUBSTR en SQL

La fonction de chaîne SUBSTR dans Structured Query Language affiche les caractères ou la sous-chaîne de la valeur d'index spécifique de la chaîne d'origine. SQL vous permet également d'utiliser la fonction SUBSTR avec les tables.

Syntaxe de la fonction de chaîne SUBSTR

Syntaxe1 : Cette syntaxe utilise la fonction SUBSTR avec le nom de colonne de la table SQL :

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

Dans cette syntaxe, nous devons définir le nom de la colonne sur laquelle nous voulons exécuter la fonction SUBSTR(). Ici, le paramètre length_of_string est facultatif. Si elle est omise, cette fonction extrait la chaîne entière de la valeur d'index de départ.

Syntaxe2 : Cette syntaxe utilise la fonction SUBSTR avec la chaîne :

 SELECT SUBSTR(Original_String, Starting_Index_value, Length_of_string); 

Syntaxe2 : Cette syntaxe utilise la fonction SUBSTR avec un seul caractère :

multithread Java
 SELECT SUBSTR(String, Starting_Index_value, 1); 

Exemples de fonction SUBSTR String

Exemple 1: La requête SELECT suivante affiche les caractères des 17èmeposition de la chaîne donnée.

 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. 

Sortir:

 website for professionals 

Exemple 2 : La requête SELECT suivante affiche les caractères du -17èmeposition de la chaîne donnée :

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

Cette requête SQL affiche les cinq caractères des 17 derniersèmeposition de la chaîne.

Sortir:

 website for professionals 

Exemple 3 : La requête SELECT suivante affiche tous les caractères des 5èmeposition de la chaîne.

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

Sortir:

java long en entier
 Delhi IS the Capital OF India 

Exemple 4 : La requête SELECT suivante affiche le caractère unique du 8èmeposition de la chaîne.

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

Sortir:

 n 

Exemple 5 : Cet exemple utilise la fonction SUBSTR avec la table SQL

Dans cet exemple, nous allons créer une nouvelle table sur laquelle nous souhaitons exécuter la fonction SUBSTR.

Dans cet exemple, nous devons créer une nouvelle table SQL à travers laquelle nous exécuterons la fonction Concat() sur les colonnes. La syntaxe de création de la nouvelle table SQL est mentionnée dans le bloc ci-dessous :

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

L'instruction CREATE suivante crée le Notes_étudiants tableau:

 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 requêtes INSERT ci-dessous insèrent les dossiers des facultés collégiales dans le Notes_étudiants tableau:

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

L'instruction SELECT suivante affiche les enregistrements insérés de l'élément ci-dessus Notes_étudiants tableau:

qu'est-ce que f5 sur le clavier
 SELECT * FROM Student_Marks; 

Carte d'étudiant Prénom_étudiant Student_Middle_Name Nom_de_l'étudiant Classe_étudiant Ville_étudiante État_étudiant Notes_étudiants
4001 Sûr Roy Sharma 4 Chandigarh Pendjab 88
4002 Vishal Gurr Sharma 8 Murthal Haryana 95
4007 Raj Singhanie Gupta 6 Ghaziabad Uttar Pradesh 91
4004 Oui Chopra Singhanie 9 Jaïpur Rajasthan 85
4011 Vinay Sharma Roy 8 Chandigarh Pendjab 94
4006 Manoj Singhanie Gupta 5 Ghaziabad Uttar Pradesh 83
4010 RAM Rahim Gupta 9 Lucknow Uttar Pradesh 89

Requête 1 : La requête SELECT suivante utilise la fonction SUBSTR avec la colonne Student_Last_Name de la table Student_Marks ci-dessus :

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

Cette instruction SQL affiche les quatre caractères après le 2sdposition du nom de famille de chaque élève.

Sortir:

bfs contre dfs
Nom_de_l'étudiant SUBSTR_2_4
Sharma nuire
Sharma nuire
Gupta upta
Singhanie Anglais
Roy Ltée
Gupta upta
Gupta upta

Requête 2 : La requête SELECT suivante utilise la fonction SUBSTR avec la colonne Student_Last_Name de la table Student_Marks ci-dessus :

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

Cette instruction SQL affiche les deux caractères de l'avant-dernière position du nom de famille de chaque étudiant.

Sortir:

Nom_de_l'étudiant SUBSTR_-3_2
Sharma rm
Sharma rm
Gupta pt
Singhanie dans
Roy Ro
Gupta pt
Gupta pt