Neste tutorial, aprenderemos a utilizar a função substr do banco de dados Oracle passo a passo, assim você conseguirá otimizar suas consultas SQL retornando somente o que necessita.
Mas, antes de começarmos, vamos entender o que é esta função substr?
O que é e como funciona a função substr?
A função substr é uma função do Oracle que permite extrair um determinado número de caracteres de uma string. Ela é muito útil para manipular strings de maneira rápida e eficiente dentro de consultas SQL.
Exemplos Utilização : Função substr Oracle
Vejamos um exemplo de como utilizar a função substr em uma consulta:
SELECT substr(campo_da_tabela, inicio, tamanho) FROM nome_da_tabela;
Nesse exemplo, estamos selecionando a substring do campo_da_tabela a partir da posição “inicio” com o tamanho “tamanho”.
Mas vamos ver alguns exemplos práticos de como a função substr :
Exemplo 1: Vamos supor que temos uma tabela de pessoas com uma coluna chamada “nome_completo” e queremos selecionar apenas o primeiro nome de cada funcionário.
Para isso, podemos utilizar a função substr da seguinte maneira:
SELECT substr(nome_completo, 1, INSTR(nome_completo, ' ') - 1) as primeiro_nome FROM pessoas;
Exemplo 2: Suponha que temos uma tabela de produtos com uma coluna chamada “descricao” e queremos selecionar apenas os últimos 100 caracteres de cada descrição.
Para isso, podemos utilizar a função substr da seguinte maneira:
SELECT substr(descricao, LENGTH(descricao) - 99, 100) as desc_ult_100_carac FROM produtos;
Exemplo 3: Suponha que temos uma tabela de funcionários com uma coluna chamada “email” e queremos selecionar apenas o nome de usuário (parte que vem antes do símbolo “@”) de cada email.
Para isso, podemos utilizar a função substr da seguinte maneira:
SELECT substr(email, 1, INSTR(email, '@') - 1) as nome_usuario FROM funcionarios;
Exemplo 4: Suponha que temos uma tabela de pessoas com uma coluna chamada “data_nasc” no formato “dd/mm/yyyy” e queremos selecionar apenas o mês de nascimento de cada pessoa da tabela.
Para isso, podemos utilizar a função substr da seguinte maneira:
SELECT substr(data_nasc, 4, 2) as mes FROM pessoas;
Caso precise do dia use:
SELECT substr(data_nasc, 1, 2) as dia FROM pessoas;
E se precisar do ano, digite:
SELECT substr(data_nasc, 7, 4) as ano FROM pessoas;
Exemplo 6: Suponha que temos uma tabela de funcionários com uma coluna chamada “nome” e queremos selecionar apenas os nomes que começam com a letra “A”.
Para isso, podemos utilizar a função substr da seguinte maneira:
SELECT nome FROM funcionarios WHERE substr(nome , 1, 1) = 'A';
Podemos fazer uma consulta para quem tem o nome que começa com Renato Por exemplo:
SELECT nome FROM funcionarios WHERE substr(nome , 1, 6) = 'Renato';
Caso queira saber quem contem o nome Renato no nome, você teria que utilizar a função instr() que já tratamos aqui no site em outro tutorial:
INSTR : Como utilizar esta função no Oracle / PLSQL
https://www.webmundi.com/banco-de-dados/oracle/instr-como-utilizar-esta-funcao-no-oracle-plsql/
Mas a consulta ficaria desta forma a consulta com a função instr() Oracle:
SELECT nome FROM funcionarios WHERE instr(nome , 'Renato') > 0;
Exemplo 7: Suponha que temos uma tabela de alunos com uma coluna chamada “nome” e queremos selecionar apenas os alunos cujo nome começa com a letra “M”.
Para isso, podemos utilizar a função substr da seguinte maneira:
SELECT nome FROM alunos WHERE substr(nome, 1, 1) = 'M';
Exemplo 8: Vamos supor que temos uma tabela de clientes com uma coluna chamada “nome_completo” e queremos selecionar apenas os clientes cujo nome começa com a letra “R” ou “S”.
Para isso, podemos utilizar a função substr da seguinte forma:
SELECT nome_completo FROM clientes WHERE substr(nome_completo, 1, 1) IN ('R', 'S');
Conclusão sobre o uso da Função substr Oracle
Como podemos ver, a função substr é muito útil para manipular strings de maneira rápida e eficiente dentro de consultas SQL.
Ela é uma ferramenta fundamental para qualquer desenvolvedor que trabalhe com banco de dados Oracle.
Referências Função substr : Oracle Database
- https://docs.oracle.com/database/121/SQLRF/functions196.htm#SQLRF06114
- https://docs.oracle.com/cloud/help/pt_BR/pbcs_common/DIEPM/integrations_expression_substring_108xd6e52f1e.htm
O conteúdo foi útil ?
Se este tutorial foi útil em seu desenvolvimento profissional, não deixe de se inscrever no canal e compartilhá-lo com amigos e colegas. Sua ação pode ajudar outras pessoas a se qualificarem também. Obrigado por sua atenção.
Se você gostou do nosso trabalho e tem a possibilidade de nos apoiar financeiramente, nós lhe agradeceríamos muito se pudesse fazer uma doação através de nosso pix. Qualquer valor é bem-vindo e fará toda a diferença para nós. Sua ajuda será fundamental para que possamos continuar produzindo conteúdo de qualidade e ajudando pessoas a se desenvolverem profissionalmente. Se você puder e quiser, basta seguir as instruções de doação que forneceremos. A sua generosidade será muito apreciada e fará toda a diferença para nós. Obrigado pelo seu apoio.
Chave pix: [email protected]
Essas doações ajudam a manter o canal e nosso site e também na criação de novos conteúdos.
E por falar em criação de conteúdo, em breve, teremos mais vídeo aulas aqui do canal sobre o banco de dados Oracle.
Por isso não esqueça de se inscrever no canal e ativar as notificações para ser avisado sobre novos vídeos aqui do canal.
Materiais e leituras que recomendamos para você:
- Como instalar o Linux Mint 20 no Virtualbox 6.1 : Windows 10
- Como Instalar o SQL Developer Oracle no Linux
- Como Instalar o Servidor XAMPP no Linux – Localhost Apache MySQL PHP
- Instalação e configuração do Flutter no Windows 10
- Sobre as oportunidades em desenvolvimento Java
- Como Instalar Tema Escuro no Netbeans : Dark Mode
- Como atualizar o Windows 7 para Windows 10 Grátis
- Como aumentar sua produtividade no Windows com teclas de atalho
- Como se conectar a um computador remoto via Prompt de Comando
- Como Instalar o SQL Developer Oracle no Linux
- DBeaver : Alternativa ao SQL Server Management Studio Linux
- Como listar as maiores tabelas ou objetos Oracle
Loja WebMundi.com : Informática
-
Alldocube-Tablet iPlay 50 Pro Max, 10.4 Polegada, 2K, 8GB RAM, 256GB ROM, Android 13, 6000mAh, Helio G99 Lte, Phonecall Pad
-
Original Lenovo K3 Pro 5.0 Portátil Bluetooth Speaker Stereo Surround Altifalantes Sem Fio Bluetooth Audio Player Altifalante
-
Alicate de rede internet Ethernet, ferramentas de friso, rj45, rj12, cat5, cat6, rj 45, grampo stripper
-
NIIMBOT-B3S Barcode Impressora de etiquetas térmicas, sem fio, Sticker Maker, bolso, roupas, jóias, Mailing, comercial
-
Baseus-HUB USB Tipo C, Dock Station, Divisor, Leitor SD, Carregador PD de 100W, USB 3.0, Compatível com HDMI, RJ45, MacBook Pro
-
Gigabyte-Conjunto de Motherboard AMD Ryzen 5, B550M, R5, 5600 CPU, Aorus Elite, Soquete, AM4, DDR4, 128GB, M.2, SATA III, 4000 OC MHz, Mainboard
-
Tubo claro invisível da tira da barra dura com tampa leitosa, alumínio Recessed conduziu o perfil, canal escondido do luminoso, 12V
-
Dc12v led luz de tira de néon rgb-led luz de tira rgb sonho cor perseguindo fita flexível tuya wifi bluetooth controle remoto
+ Ofertas Informática, Computadores e Tecnologia
Obrigado
Esperamos que esta publicação tenha lhe ajudado a aprofundar seus conhecimentos em Banco de Dados Oracle.
Qual é sua experiência este Banco de Dados ?
Conte pra nós a sua experiência, adoraríamos saber.
Como entusiasta em desenvolvimento de software, queremos enriquecer sua experiência e conhecimento sobre este produto.
Se você gostou deste post, compartilhe com seus amigos ou nos acompanhe pelas redes sociais.
Tem alguma dúvida ou observação a fazer ?
Além disso, você pode nos ajudar a criar mais conteúdos como este. Como ?
Adquira produtos em nossa Loja Virtual, uma parceria do webmundi.com com as maiores plataformas de comércio eletrônico do Brasil.
Lembrando que comprando em nossa loja você apoia a criação de vídeos gratuitos aqui no site e em nosso canal do YouTube.
Prestigie também nossos apoiadores e anunciantes conhecendo seus produtos e serviços.
É simples e rápido e assim você ajuda a gente a crescer. 👍🏼
Obrigado e um grande abraço