No MySQL, o
SUBSTRING()
A função permite que você retorne uma substring de uma string. Assim, você pode usar esta função para pegar uma parte do texto de um pedaço maior de texto. Existem várias maneiras diferentes de usar o
SUBSTRING()
função, e isso afeta a sintaxe. Exemplo 1 – Uso básico
O uso mais básico é assim:
SUBSTRING(str,pos)
Neste caso,
str
é a string e pos
é a posição para iniciar a substring. Aqui está um exemplo dessa sintaxe básica:
SELECT SUBSTRING('Cats and dogs', 6);
Resultado:
and dogs
Neste exemplo, pegamos uma substring da string
Cats and dogs
, começando na posição 6. Exemplo 2 – Usando a cláusula FROM
Outra forma de fazer:
SUBSTRING(str FROM pos)
Neste caso,
FROM
é SQL padrão. Observe que essa sintaxe não usa vírgulas. Aqui está o mesmo exemplo do anterior, exceto que aqui nós o alteramos para usar o
FROM
sintaxe:SELECT SUBSTRING('Cats and dogs' FROM 6);
Resultado:
and dogs
Assim obtemos o mesmo resultado.
Exemplo 3 – Adicionar um comprimento para a substring
Você também pode adicionar um comprimento:
SUBSTRING(str,pos,len)
Aqui,
len
é o comprimento da substring a ser retornada. Isso nos permite retornar uma substring com um comprimento especificado. Aqui está um exemplo de como fazer isso:
SELECT SUBSTRING('Cats and dogs', 6, 3);
Resultado:
and
Portanto, neste caso, optamos por retornar apenas 3 caracteres da posição inicial.
Exemplo 4 – Usando FOR
Finalmente, ao usar
FROM
, você também pode adicionar o FOR
para fornecer o comprimento. SUBSTRING(str FROM pos FOR len)
E aqui está o mesmo exemplo anterior, exceto que aqui usamos o
FROM
cláusula, bem como FOR
:SELECT SUBSTRING('Cats and dogs' FROM 6 FOR 3);
Resultado:
and
Assim como no exemplo anterior, isso seleciona 3 caracteres da posição inicial.
Exemplo 5 - Contagem regressiva
Você também pode usar um valor negativo para a posição inicial. Neste caso, a posição é tomada contando para trás a partir do final da string:
SELECT SUBSTRING('Cats and dogs', -6);
Resultado:
d dogs
Exemplo 6 – A função SUBSTR()
Você também pode usar
SUBSTR()
que é sinônimo de SUBSTRING()
. Portanto, qualquer um dos exemplos anteriores pode ser reescrito usando SUBSTR()
em vez de. Exemplo:
SELECT SUBSTR('Cats and dogs', 6);
Resultado:
and dogs
Exemplo 7 – A função MID()
E ainda há outro sinônimo para
SUBSTRING()
– o MID()
função. Portanto, qualquer um dos exemplos anteriores pode ser reescrito usando MID()
em vez de. Exemplo:
SELECT MID('Cats and dogs', 6);
Resultado:
and dogs