String split sql servidor

String split sql servidor
Se você trabalha com bancos de dados há muito tempo, é provável que você se pergunte como transformar uma sequência de strings em linhas em um banco de dados. Nos últimos anos, você teria que implementar um método personalizado para converter uma sequência de strings em linhas de tabela. No entanto, no Microsoft SQL Server 2016 e acima, podemos usar a função string_split ().

Conforme discutido neste guia, levaremos uma string em um formato semelhante a uma matriz e convertemos em um conjunto de linhas com base em um delimitador específico.

Função sql server string_split ()

O SQL Server String_split () é uma função com valor de tabela introduzida no SQL Server 2016. Ele permite que você divida uma string em linhas de tabela de sub-strings separadas por um delimitador especificado.

A sintaxe para a função string_split é como mostrado:

string_split (string, delimiter);

Argumentos de função e valor de retorno

A função leva dois argumentos:

  1. string - uma string literal ou uma expressão que avalia para char, varchar, nvarchar, tipo nchar.
  2. Delimitador - Um valor delimitador usado para separar as strings.

Valor de retorno
A função retorna a coluna única com um valor de nome. As linhas são as cordas separadas pela função.

Embora a função separe as cordas em linhas com base no delimitador especificado, a função pode organizar as linhas em qualquer ordem. Você pode usar o pedido por cláusula para definir sua ordem de classificação.

Split String: Exemplos

Vejamos alguns exemplos e entendemos como usar a função String_split no SQL Server.

Exemplo 1
A consulta de exemplo abaixo separa uma string usando um espaço como delimitador.

Selecione Valor em String_split ('MySQL PostGresql MongoDB SQL Server Sqlite' ");

A consulta acima deve dividir as cordas com um personagem espacial e devolver as linhas. Um exemplo de saída é como mostrado:

Exemplo 2
Você também pode separar uma sequência separada por vírgula, como mostrado na consulta abaixo:

Selecione Valor em String_split ('MySQL, PostGresql, MongoDB, SQL Server, SQLite', ',');

A função deve retornar os resultados como:

Exemplo 3
O exemplo abaixo mostra como usar o pedido por cláusula com a função string_split ().

Selecione Valor em String_split ('MySQL, PostgreSQL, MongoDB, SQL Server, SQLite', ') Ordem por valor Desc;

Os registros resultantes são os mostrados:

Fechamento

Este curto guia ajuda você a usar a função SQL Server String_split para separar strings com base em um delimitador.