logo

SUBSTR Funkcja w SQL

Funkcja ciągu SUBSTR w Structured Query Language pokazuje znaki lub podciąg z określonej wartości indeksu oryginalnego ciągu. SQL umożliwia także użycie funkcji SUBSTR z tabelami.

Składnia funkcji ciągu SUBSTR

Składnia 1: Ta składnia wykorzystuje funkcję SUBSTR z nazwą kolumny tabeli SQL:

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

W tej składni musimy zdefiniować nazwę tej kolumny, na której chcemy wykonać funkcję SUBSTR(). W tym przypadku parametr Długość_ciągu jest opcjonalny. Jeśli zostanie pominięty, funkcja ta wyodrębni cały ciąg znaków z początkowej wartości indeksu.

Składnia2: W tej składni używana jest funkcja SUBSTR z ciągiem znaków:

 SELECT SUBSTR(Original_String, Starting_Index_value, Length_of_string); 

Składnia2: W tej składni używana jest funkcja SUBSTR z pojedynczym znakiem:

ile zer jest w 1 miliardzie
 SELECT SUBSTR(String, Starting_Index_value, 1); 

Przykłady funkcji SUBSTR String

Przykład 1: Poniższe zapytanie SELECT pokazuje znaki z zakresu 17tpołożenie danego ciągu.

 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. 

Wyjście:

 website for professionals 

Przykład 2: Poniższe zapytanie SELECT pokazuje znaki z zakresu -17tpozycja podanego ciągu:

pandy tworzące ramkę danych
 SELECT SUBSTR( 'JavaTpoint is a website for professionals', -17, 5); 

To zapytanie SQL pokazuje pięć znaków z ostatnich 17tpołożenie sznurka.

Wyjście:

 website for professionals 

Przykład 3: Poniższe zapytanie SELECT pokazuje wszystkie znaki z 5tpołożenie sznurka.

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

Wyjście:

Sprawdzanie zerowej wartości Java
 Delhi IS the Capital OF India 

Przykład 4: Poniższe zapytanie SELECT pokazuje pojedynczy znak z 8tpołożenie sznurka.

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

Wyjście:

 n 

Przykład 5: W tym przykładzie zastosowano funkcję SUBSTR z tabelą SQL

W tym przykładzie utworzymy nową tabelę, na której chcemy wykonać funkcję SUBSTR.

W tym przykładzie musimy utworzyć nową tabelę SQL, za pomocą której wykonamy funkcję Concat() na kolumnach. Składnia tworzenia nowej tabeli SQL jest opisana w poniższym bloku:

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

Następująca instrukcja CREATE tworzy plik Oceny_uczniów tabela:

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

Poniższe zapytania INSERT wstawiają zapisy wydziałów uczelni w pliku Oceny_uczniów tabela:

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

Następująca instrukcja SELECT wyświetla wstawione rekordy powyższego Oceny_uczniów tabela:

scan.nextstring Java
 SELECT * FROM Student_Marks; 

Legitymacja studencka Imię_ucznia Imię_Średniego_Ucznia Nazwisko_studenta Klasa_ucznia Student_Miasto Stan_ucznia Oceny_uczniów
4001 Bezpieczna Roy Sharma 4 Czandigarh Pendżab 88
4002 Vishal Gurr Sharma 8 Murthala Hariana 95
4007 Raj Singapur Gupta 6 Ghaziabad Uttar Pradesh 91
4004 Yash Chopra Singapur 9 Jaipur Radżastan 85
4011 Vinay Sharma Roy 8 Czandigarh Pendżab 94
4006 Manoj Singapur Gupta 5 Ghaziabad Uttar Pradesh 83
4010 Baran Raheem Gupta 9 Lucknow Uttar Pradesh 89

Zapytanie 1: Poniższe zapytanie SELECT wykorzystuje funkcję SUBSTR z kolumną Student_Last_Name powyższej tabeli Student_Marks:

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

Ta instrukcja SQL pokazuje cztery znaki po cyfrze 2IImiejsce nazwiska każdego ucznia.

Wyjście:

wzorce projektowe Java
Nazwisko_studenta SUBSTR_2_4
Sharma szkoda
Sharma szkoda
Gupta wyżej
Singapur język angielski
Roy Sp. z o.o
Gupta wyżej
Gupta wyżej

Zapytanie 2: Poniższe zapytanie SELECT wykorzystuje funkcję SUBSTR z kolumną Student_Last_Name powyższej tabeli Student_Marks:

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

Ta instrukcja SQL pokazuje dwa znaki od trzeciej od końca nazwiska każdego ucznia.

Wyjście:

Nazwisko_studenta PODSTR_-3_2
Sharma rm
Sharma rm
Gupta pkt
Singapur W
Roy Ro
Gupta pkt
Gupta pkt