DataARTIGO

Função STRING_SPLIT finalmente ganha parâmetro para incluir número das posições

Função STRING_SPLIT finalmente ganha parâmetro para incluir número das posições
Imagem: Thiago Adriano

Gostaria de compartilhar com vocês uma novidade bem legal que notei no Azure SQL Database, que foi a inclusão de um novo parâmetro na função STRING_SPLIT e que vem sendo solicitado desde que a função foi criada no SQL Server 2016, que é a inclusão do número das posições no retorno das quebras do texto.

Essa função é tão nova, que até o momento dessa publicação, esse parâmetro novo está disponível apenas na versão em inglês da documentação:

Para quem não se lembra, o uso dessa função é feito dessa forma:

O problema é que a função não retornava o número da posição, então era difícil pegar o primeiro elemento ou o elemento N do retorno. Com isso, eu mesmo acabava utilizando outras alternativas, como já demonstrei no artigo Como quebrar uma string em uma tabela de substrings utilizando um delimitador no SQL Server e que funciona em qualquer versão do SQL Server.

Entretanto, para minha surpresa, hoje eu descobri que o Azure SQL Database já implementou uma alteração na função STRING_SPLIT e que agora está permitindo retornar o número da posição:

E agora sim, posso escolher os elementos que eu quero:

Se tentarmos reproduzir a mesma coisa no SQL Server 2019, nos deparamos com essa mensagem de erro:

Então imagino que em breve, já deve sair alguma atualização para incluir essa melhoria para as versões On-Premisses.

Então é isso aí, pessoal! Post curto, rápido e informativo.

Um grande abraço e até a próxima!

Thiago AdrianoAutor

Microsoft (MVP), atualmente trabalha como Arquiteto de Software para TV Bandeirantes. Nesses últimos anos, focou nas tecnologias criadas pela Microsoft, mas sempre esteve antenado para as novas tecnologias que estão surgindo no mercado. Em um breve resumo, é uma pessoa apaixonada pelo que faz, tem a sua profissão como hobby.

Ver perfil