A função de string SUBSTR em Structured Query Language mostra os caracteres ou substring do valor de índice específico da string original. SQL também permite usar a função SUBSTR com as tabelas.
Sintaxe da função de string SUBSTR
Sintaxe1: Esta sintaxe usa a função SUBSTR com o nome da coluna da tabela SQL:
SELECT SUBSTR(Column_Name, Starting_Index_value, Length_of_string) AS Alias_Name FROM Table_Name;
Nesta sintaxe, temos que definir o nome da coluna na qual queremos executar a função SUBSTR(). Aqui, o parâmetro Length_of_string é opcional. Se for omitido, esta função extrai toda a string do valor inicial do índice.
Sintaxe2: Esta sintaxe usa a função SUBSTR com a string:
SELECT SUBSTR(Original_String, Starting_Index_value, Length_of_string);
Sintaxe2: Esta sintaxe usa a função SUBSTR com um único caractere:
lista ordenada java
SELECT SUBSTR(String, Starting_Index_value, 1);
Exemplos de função SUBSTR String
Exemplo 1: A seguinte consulta SELECT mostra os caracteres dos 17ºposição da string fornecida.
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.
Saída:
idade de Salman Khan
website for professionals
Exemplo 2: A consulta SELECT a seguir mostra os caracteres do -17ºposição da string fornecida:
SELECT SUBSTR( 'JavaTpoint is a website for professionals', -17, 5);
Esta consulta SQL mostra os cinco caracteres dos últimos 17ºposição da corda.
Saída:
website for professionals
Exemplo 3: A consulta SELECT a seguir mostra todos os caracteres dos 5ºposição da corda.
SELECT SUBSTR( 'New Delhi IS the Capital OF India', 5);
Saída:
Delhi IS the Capital OF India
Exemplo 4: A seguinte consulta SELECT mostra o único caractere dos 8ºposição da corda.
SELECT SUBSTR( 'JavaTpoint', 8, 1);
Saída:
n
Exemplo 5: Este exemplo usa a função SUBSTR com a tabela SQL
caixa de listagem html
Neste exemplo, vamos criar uma nova tabela na qual queremos executar a função SUBSTR.
Neste exemplo, temos que criar uma nova tabela SQL através da qual executaremos a função Concat() nas colunas. A sintaxe para criação da nova tabela SQL é mencionada no bloco abaixo:
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) );
A seguinte instrução CREATE cria o Notas_Aluno mesa:
preenchimento np
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 );
As consultas INSERT abaixo inserem os registros das faculdades universitárias no Notas_Aluno mesa:
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);
A seguinte instrução SELECT exibe os registros inseridos acima Notas_Aluno mesa:
SELECT * FROM Student_Marks;
Identidade estudantil | Aluno_Primeiro_Nome | Aluno_Nome_do_Meio | Aluno_Sobrenome_ | Aluno_Classe | Cidade_Aluno | Estado_Aluno | Notas_Aluno |
---|---|---|---|---|---|---|---|
4001 | Seguro | Roy | Sharma | 4 | Chandigarh | Punjab | 88 |
4002 | Vishal | Gur | Sharma | 8 | Murthal | Hariana | 95 |
4007 | Raj | Singhânia | Gupta | 6 | Ghaziabad | Utar Pradesh | 91 |
4004 | Yash | Chopra | Singhânia | 9 | Jaipur | Rajastão | 85 |
4011 | Vinay | Sharma | Roy | 8 | Chandigarh | Punjab | 94 |
4006 | Manoj | Singhânia | Gupta | 5 | Ghaziabad | Utar Pradesh | 83 |
4010 | Bater | Raheem | Gupta | 9 | Luck agora | Utar Pradesh | 89 |
Consulta 1: A consulta SELECT a seguir usa a função SUBSTR com a coluna Student_Last_Name da tabela Student_Marks acima:
SELECT Student_Last_Name, SUBSTR(Student_Last_Name, 2, 4) AS SUBSTR_2_4 FROM Student_Marks;
Esta instrução SQL mostra os quatro caracteres após o 2eposição do Sobrenome de cada aluno.
Saída:
Aluno_Sobrenome_ | SUBST_2_4 |
---|---|
Sharma | ferir |
Sharma | ferir |
Gupta | upta |
Singhânia | Inglês |
Roy | Ltda |
Gupta | upta |
Gupta | upta |
Consulta 2: A consulta SELECT a seguir usa a função SUBSTR com a coluna Student_Last_Name da tabela Student_Marks acima:
SELECT Student_Last_Name, SUBSTR(Student_Last_Name, -3, 2) AS SUBSTR_-3_2 FROM Student_Marks;
Esta instrução SQL mostra os dois caracteres da terceira última posição do Sobrenome de cada aluno.
shweta tiwari
Saída:
Aluno_Sobrenome_ | SUBST_-3_2 |
---|---|
Sharma | rm |
Sharma | rm |
Gupta | ponto |
Singhânia | em |
Roy | Ro |
Gupta | ponto |
Gupta | ponto |