Como dividir a corda em mysql

Como dividir a corda em mysql
Muitas funções internas existem no MySQL para fazer diferentes tipos de operações com os dados da string. Às vezes é necessário dividir os dados da string com base em qualquer delimitador ao executar a consulta selecionada. A função substring_index () é usada para dividir os dados da string recuperados pela consulta com base em um delimitador específico. A maneira de usar essa função na consulta selecionada é discutida neste tutorial.

Sintaxe de substring_index ():

A função substring_index () leva três argumentos e retorna um valor de substring. A sintaxe da função substring_index () é fornecida abaixo:

String substring_index (string, delimitador, contagem);

  • O primeiro argumento é o valor da string que será dividido.
  • O segundo argumento é o delimitador que será usado para dividir o valor da string.
  • O terceiro argumento define o número de ocorrências do delimitador. Pode ser positivo ou negativo. Se o valor do terceiro argumento for positivo, o valor da substring será devolvido da esquerda. Se o valor do terceiro argumento for negativo, o valor da substring será retornado do direito.

String Split usando a função substring_index ():

Diferentes usos da função substring_index () foram mostrados nesta parte deste tutorial.

Exemplo 1: string dividida com base no valor positivo da contagem

Esta parte do tutorial mostra os quatro usos da função substring_index () com o valor de contagem positivo e o delimitador diferente.

Execute a seguinte instrução Select que usa a função substring_index () com o valor positivo da contagem, 1, e o espaço como delimitador. A string principal, 'Welcome to linuxhint', contém três palavras. Então, a primeira palavra da string será impressa na saída.

Selecione substring_index ('Welcome to linuxhint', ", 1);

A saída a seguir será exibida após a execução da declaração anterior:

Execute a seguinte instrução Select que usa a função substring_index () com o valor positivo da contagem, 2 e o personagem, 'O' como o delimitador. A corda principal, 'Welcome to Linuxhint' contém o personagem, 'O' duas vezes. A segunda vez 'O' apareceu na segunda palavra, 'para'. Então, a saída será 'Bem vindo t'.

Selecione substring_index ('Welcome to linuxhint', 'O', 2);

A saída a seguir aparecerá após a execução da declaração acima:

Execute a seguinte instrução Select que usa a função substring_index () com o valor de contagem positivo, 1 e a string, 'para' como o delimitador. A sequência principal, 'Welcome to linuxhint' contém a string, 'para' uma vez. Então, a saída será 'Bem-vindo'.

Selecione substring_index ('Welcome to linuxhint', 'para', 1);

A saída a seguir será exibida após a execução da declaração anterior:

Execute a seguinte instrução Select que usa a função substring_index () com o valor de contagem positivo, 3 e a string, 'para', como o delimitador. A string principal, 'Welcome to linuxhint' contém a string, 'para' apenas uma vez. Então, a sequência principal será retornada na saída.

Selecione substring_index ('Welcome to linuxhint', 'para', 3);

A saída a seguir será exibida após a execução da declaração anterior:

Exemplo 2: string dividida com base no valor da contagem negativa

Esta parte do tutorial mostra os três usos da função substring_index () com o valor de contagem negativa e o delimitador diferente foram exibidos nesta parte do tutorial.

Execute a seguinte instrução Select que usa a função substring_index () com o valor de contagem negativo, -1 e o espaço como delimitador. A string principal, 'Welcome to linuxhint', contém três palavras. Portanto, a última palavra da string será impressa na saída para o valor negativo:

Selecione substring_index ('Welcome to linuxhint', ", -1);

A saída a seguir será exibida após a execução da declaração anterior:

Execute a seguinte instrução Select que usa a função substring_index () com o valor de contagem negativo, -2 e o personagem, 'e' como o delimitador. A sequência principal, 'Welcome to linuxhint', contém o personagem, 'e' apenas uma vez. Então, a saída será 'ache a Linuxhint':

Selecione substring_index ('Welcome to linuxhint', 'e', ​​-2);

A saída a seguir será exibida após a execução da declaração anterior:

Execute a seguinte instrução Select que usa a função substring_index () com o valor de contagem negativo, -2 e a string, 'em' como o delimitador. A sequência principal, 'Welcome to linuxhint' contém a string 'em' duas vezes. Então, a substring 'desinteressado'será devolvido na saída.

Selecione substring_index ('Welcome to linuxhint', 'em', -2);

A saída a seguir será exibida após a execução da declaração anterior:

Exemplo 3: Split String Valor da tabela

Você precisa criar uma tabela com dados em um banco de dados MySQL para verificar a função substring_index () para os dados da tabela.

Execute a seguinte consulta para criar um banco de dados nomeado test_db:

Criar banco de dados test_db;

Execute a seguinte declaração para usar o test_db Banco de dados como o banco de dados atual:

Use test_db;

Execute a seguinte consulta para criar o clientes Tabela com quatro campos:

Crie clientes de tabela (
Id int não é uma chave primária nula,
Nome Varchar (30) não nulo,
Email Varchar (50),
contact_no varchar (15));

Execute a seguinte consulta para inserir três registros no clientes mesa:

Insira em 'clientes' ('id', 'nome', 'email', 'contact_no') valores
('001', 'mahmuda ferdous', '[email protected] ',' +8801928964534 '),
('002', 'Zarin Chowdhury', '[email protected] ',' +8801855342123 '),
('003', 'mahmudul hasan', '[email protected] ',' +8801728976587 ');

Execute o seguinte comando para ler todos os registros do clientes mesa:

Selecione * dos clientes;

O nome O campo contém o primeiro nome e o sobrenome. O contact_no O campo contém o número de celular com o código do país. O primeiro nome e o número de celular sem o código do país podem ser lidos na tabela usando a função substring_index (). Na consulta selecionada a seguir, o primeiro nome será recuperado usando o delimitador de espaço e 1 como o valor da contagem na função substring_index (), e o número do celular sem o código do país será recuperado usando o código do país como delimitador e -1 como o valor da contagem na função substring_index ():

Selecione
id, substring_index (nome, ", 1) como 'primeiro nome', email, substring_index (contact_no, '+88',-1) como telefone
De clientes;

A saída a seguir será exibida após a execução da declaração anterior:

Conclusão:

Os diferentes usos da função substring_index () usando diferentes valores de argumento foram discutidos neste tutorial usando vários exemplos. Espero que os exemplos deste tutorial ajudem os usuários do MySQL a conhecer os usos da função substring_index () e a aplicá -lo corretamente na consulta selecionada. Confira outros artigos de dica do Linux para obter mais dicas e tutoriais.