/* ============================================================================
   PESQUISA DE FUNÇÕES DE STRING NO MYSQL
   Descrição: Detalhamento de finalidade, sintaxe genérica e exemplos práticos.
   ============================================================================ */

-- ----------------------------------------------------------------------------
-- 1. INSTR()
-- Finalidade: Retorna a posição (índice baseado em 1) da primeira ocorrência de 
--             uma substring dentro de uma string principal. Retorna 0 se não encontrar.
-- Sintaxe Genérica: INSTR(string_principal, substring_buscada)
-- ----------------------------------------------------------------------------
SELECT INSTR('Banco de Dados MySQL', 'Dados') AS Exemplo_1; -- Resultado: 10
SELECT INSTR('contato@empresa.com.br', '@') AS Exemplo_2;  -- Resultado: 8
SELECT INSTR('Programação SQL', 'Java') AS Exemplo_3;      -- Resultado: 0


-- ----------------------------------------------------------------------------
-- 2. LOCATE()
-- Finalidade: Semelhante à INSTR(), retorna a posição da primeira ocorrência de 
--             uma substring, mas permite definir uma posição inicial para a busca.
-- Sintaxe Genérica: LOCATE(substring_buscada, string_principal [, posicao_inicial])
-- ----------------------------------------------------------------------------
SELECT LOCATE('SQL', 'MySQL e PostgreSQL') AS Exemplo_1;       -- Resultado: 3
SELECT LOCATE('SQL', 'MySQL e PostgreSQL', 6) AS Exemplo_2;    -- Resultado: 16 (busca a partir do caractere 6)
SELECT LOCATE('a', 'banana', 3) AS Exemplo_3;                  -- Resultado: 4


-- ----------------------------------------------------------------------------
-- 3. LCASE() e 4. LOWER()
-- Finalidade: Convertem todos os caracteres de uma string para letras minúsculas.
--             (Nota: LCASE é um sinônimo de LOWER no MySQL).
-- Sintaxe Genérica: LCASE(string) | LOWER(string)
-- ----------------------------------------------------------------------------
SELECT LCASE('MYSQL SERVER') AS Exemplo_LCASE_1;               -- Resultado: 'mysql server'
SELECT LOWER('João Da Silva') AS Exemplo_LOWER_1;              -- Resultado: 'joão da silva'
SELECT LOWER('ADMIN@DOMINIO.COM') AS Exemplo_LOWER_2;          -- Resultado: 'admin@dominio.com'


-- ----------------------------------------------------------------------------
-- 5. UCASE() e 6. UPPER()
-- Finalidade: Convertem todos os caracteres de uma string para letras maiúsculas.
--             (Nota: UCASE é um sinônimo de UPPER no MySQL).
-- Sintaxe Genérica: UCASE(string) | UPPER(string)
-- ----------------------------------------------------------------------------
SELECT UCASE('mysql server') AS Exemplo_UCASE_1;               -- Resultado: 'MYSQL SERVER'
SELECT UPPER('são paulo - sp') AS Exemplo_UPPER_1;             -- Resultado: 'SÃO PAULO - SP'
SELECT UPPER('aprovado') AS Exemplo_UPPER_2;                   -- Resultado: 'APROVADO'


-- ----------------------------------------------------------------------------
-- 7. LTRIM()
-- Finalidade: Remove todos os espaços em branco à esquerda (início) de uma string.
-- Sintaxe Genérica: LTRIM(string)
-- ----------------------------------------------------------------------------
SELECT LTRIM('   Texto com espaço no início') AS Exemplo_1;    -- Resultado: 'Texto com espaço no início'
SELECT CONCAT('[', LTRIM('    MySQL'), ']') AS Exemplo_2;      -- Resultado: '[MySQL]'
SELECT LENGTH(LTRIM('   ABC')) AS Exemplo_3;                   -- Resultado: 3 (removeu os 3 espaços)


-- ----------------------------------------------------------------------------
-- 8. RTRIM()
-- Finalidade: Remove todos os espaços em branco à direita (final) de uma string.
-- Sintaxe Genérica: RTRIM(string)
-- ----------------------------------------------------------------------------
SELECT RTRIM('Texto com espaço no final   ') AS Exemplo_1;     -- Resultado: 'Texto com espaço no final'
SELECT CONCAT('[', RTRIM('MySQL    '), ']') AS Exemplo_2;      -- Resultado: '[MySQL]'
SELECT LENGTH(RTRIM('ABC   ')) AS Exemplo_3;                   -- Resultado: 3 (removeu os 3 espaços)


-- ----------------------------------------------------------------------------
-- 9. TRIM()
-- Finalidade: Remove espaços em branco (ou caracteres específicos) do início, 
--             do fim ou de ambos os lados de uma string.
-- Sintaxe Genérica: TRIM([{BOTH | LEADING | TRAILING} [caractere_removido] FROM] string)
-- ----------------------------------------------------------------------------
SELECT TRIM('   Espaços nos dois lados   ') AS Exemplo_1;      -- Resultado: 'Espaços nos dois lados'
SELECT TRIM(LEADING '0' FROM '000012345') AS Exemplo_2;        -- Resultado: '12345'
SELECT TRIM(BOTH '#' FROM '###Título###') AS Exemplo_3;        -- Resultado: 'Título'


-- ----------------------------------------------------------------------------
-- 10. SUBSTRING() e 11. MID()
-- Finalidade: Extraem uma parte (substring) de uma string a partir de uma 
--             posição inicial e, opcionalmente, com um tamanho definido.
--             (Nota: MID() é um sinônimo exato de SUBSTRING() no MySQL).
-- Sintaxe Genérica: SUBSTRING(string, posicao_inicial [, comprimento])
--                   MID(string, posicao_inicial, comprimento)
-- ----------------------------------------------------------------------------
SELECT SUBSTRING('Desenvolvimento Web', 1, 15) AS Exemplo_1;   -- Resultado: 'Desenvolvimento'
SELECT SUBSTRING('2026-11-13', 6) AS Exemplo_2;                -- Resultado: '11-13' (do 6º até o fim)
SELECT MID('CPF: 123.456.789-00', 6, 14) AS Exemplo_3;         -- Resultado: '123.456.789-00'


-- ----------------------------------------------------------------------------
-- 12. RIGHT()
-- Finalidade: Extrai uma quantidade específica de caracteres contando a partir 
--             da extremidade direita (final) da string.
-- Sintaxe Genérica: RIGHT(string, quantidade_caracteres)
-- ----------------------------------------------------------------------------
SELECT RIGHT('13/11/2026', 4) AS Exemplo_1;                    -- Resultado: '2026'
SELECT RIGHT('Arquivo_Relatorio.pdf', 3) AS Exemplo_2;         -- Resultado: 'pdf'
SELECT RIGHT('ABCDEFG', 2) AS Exemplo_3;                       -- Resultado: 'FG'


-- ----------------------------------------------------------------------------
-- 13. RPAD()
-- Finalidade: Preenche o lado direito de uma string com um caractere ou texto 
--             específico até que ela atinja um tamanho total desejado.
-- Sintaxe Genérica: RPAD(string, tamanho_total, string_preenchimento)
-- ----------------------------------------------------------------------------
SELECT RPAD('Item 1', 15, '.') AS Exemplo_1;                   -- Resultado: 'Item 1.........'
SELECT RPAD('99', 5, '0') AS Exemplo_2;                        -- Resultado: '99000'
SELECT RPAD('Texto Longo', 5, '*') AS Exemplo_3;               -- Resultado: 'Texto' (corta se for maior)


-- ----------------------------------------------------------------------------
-- 14. REPEAT()
-- Finalidade: Repete uma string um número determinado de vezes.
-- Sintaxe Genérica: REPEAT(string, numero_repeticoes)
-- ----------------------------------------------------------------------------
SELECT REPEAT('*', 5) AS Exemplo_1;                            -- Resultado: '*****'
SELECT REPEAT('MySQL ', 3) AS Exemplo_2;                       -- Resultado: 'MySQL MySQL MySQL '
SELECT REPEAT('-', 10) AS Exemplo_3;                           -- Resultado: '----------'


-- ----------------------------------------------------------------------------
-- 15. REPLACE()
-- Finalidade: Substitui todas as ocorrências de uma substring dentro de uma 
--             string por uma nova substring (sensível a maiúsculas/minúsculas).
-- Sintaxe Genérica: REPLACE(string_original, texto_antigo, texto_novo)
-- ----------------------------------------------------------------------------
SELECT REPLACE('123.456.789-00', '.', '') AS Exemplo_1;        -- Resultado: '123456789-00'
SELECT REPLACE('Eu gosto de Java', 'Java', 'SQL') AS Exemplo_2;-- Resultado: 'Eu gosto de SQL'
SELECT REPLACE('1500,50', ',', '.') AS Exemplo_3;              -- Resultado: '1500.50'


-- ----------------------------------------------------------------------------
-- 16. REVERSE()
-- Finalidade: Inverte a ordem de todos os caracteres de uma string.
-- Sintaxe Genérica: REVERSE(string)
-- ----------------------------------------------------------------------------
SELECT REVERSE('MySQL') AS Exemplo_1;                          -- Resultado: 'LQSyM'
SELECT REVERSE('12345') AS Exemplo_2;                          -- Resultado: '54321'
SELECT REVERSE('arara') AS Exemplo_3;                          -- Resultado: 'arara' (útil para palíndromos)


/* ============================================================================
   SITES PESQUISADOS E UTILIZADOS COMO REFERÊNCIA:
   1. Documentação Oficial do MySQL (Oracle):
      https://[Log in to view URL]
   2. W3Schools - MySQL String Functions:
      https://[Log in to view URL]
   3. DevMedia - Funções de String no MySQL:
      https://[Log in to view URL]
   4. Bóson Treinamentos - Manipulação de Strings no MySQL:
      http://[Log in to view URL]
   ============================================================================ */

Embed on website

To embed this project on your website, copy the following code and paste it into your website's HTML: