logo

SUBSTR funkcija u SQL-u

Funkcija niza SUBSTR u Structured Query Language prikazuje znakove ili podniz iz specifične vrijednosti indeksa izvornog niza. SQL također omogućuje korištenje funkcije SUBSTR s tablicama.

Sintaksa SUBSTR funkcije niza

Sintaksa1: Ova sintaksa koristi funkciju SUBSTR s nazivom stupca SQL tablice:

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

U ovoj sintaksi moramo definirati naziv tog stupca na kojem želimo izvršiti funkciju SUBSTR(). Ovdje je parametar Length_of_string neobavezan. Ako je izostavljen, tada ova funkcija izvlači cijeli niz iz vrijednosti početnog indeksa.

Sintaksa2: Ova sintaksa koristi funkciju SUBSTR s nizom:

 SELECT SUBSTR(Original_String, Starting_Index_value, Length_of_string); 

Sintaksa2: Ova sintaksa koristi funkciju SUBSTR s jednim znakom:

podijeljen nizom java
 SELECT SUBSTR(String, Starting_Index_value, 1); 

Primjeri funkcije SUBSTR String

Primjer 1: Sljedeći SELECT upit prikazuje znakove iz 17thpoložaj zadanog niza.

 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. 

Izlaz:

gomila i hrpa sortirati
 website for professionals 

Primjer 2: Sljedeći SELECT upit prikazuje znakove iz -17thpozicija zadanog niza:

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

Ovaj SQL upit prikazuje pet znakova od zadnjih 17thpoložaj žice.

Izlaz:

 website for professionals 

Primjer 3: Sljedeći SELECT upit prikazuje sve znakove iz 5thpoložaj žice.

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

Izlaz:

 Delhi IS the Capital OF India 

Primjer 4: Sljedeći SELECT upit prikazuje jedan znak iz 8thpoložaj žice.

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

Izlaz:

 n 

Primjer 5: Ovaj primjer koristi funkciju SUBSTR sa SQL tablicom

sql poredak slučajnim odabirom

U ovom primjeru ćemo kreirati novu tablicu na kojoj želimo izvršiti SUBSTR funkciju.

U ovom primjeru moramo kreirati novu SQL tablicu kroz koju ćemo izvršavati funkciju Concat() na stupcima. Sintaksa za stvaranje nove SQL tablice spominje se u bloku ispod:

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

Sljedeća naredba CREATE stvara Ocjene_učenika stol:

Glumica Rakul Preet Singh
 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 ); 

Donji INSERT upiti umeću zapise fakultetskih fakulteta u Ocjene_učenika stol:

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

Sljedeća izjava SELECT prikazuje umetnute zapise od gore navedenog Ocjene_učenika stol:

 SELECT * FROM Student_Marks; 

Studentska iskaznica Ime_učenika Srednje_ime_učenika Prezime_učenika Student_Razred Studentski_grad Student_State Ocjene_učenika
4001 Sef 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 Radna memorija Raheem Gupta 9 Lucknow Uttar Pradesh 89

Upit 1: Sljedeći SELECT upit koristi funkciju SUBSTR sa stupcem Student_Last_Name gornje tablice Student_Marks:

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

Ova SQL izjava prikazuje četiri znaka nakon 2ndmjesto Prezime svakog učenika.

Izlaz:

Prezime_učenika SUBSTR_2_4
Sharma naštetiti
Sharma naštetiti
Gupta upta
Singhania Engleski
Roy doo
Gupta upta
Gupta upta

Upit 2: Sljedeći SELECT upit koristi funkciju SUBSTR sa stupcem Student_Last_Name gornje tablice Student_Marks:

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

Ova SQL naredba prikazuje dva znaka s trećeg zadnjeg mjesta prezimena svakog učenika.

graničnik java

Izlaz:

Prezime_učenika SUBSTR_-3_2
Sharma rm
Sharma rm
Gupta točka
Singhania u
Roy Ro
Gupta točka
Gupta točka