Olá galera o/

Vamos a mais uma postagem sobre funções. Hoje iremos abordar sobre a função de texto CONCAT.

Essa função retorna uma cadeia de caracteres que é o resultado da concatenação de dois ou mais valores. Substitui o uso do + no momento de concatenar os campos numa consulta. A função foi implementada a partir da versão 2012 do SQL Server.

A mesma reduz a utilização do Cast ou Convert, pois todos os valores que são utilizados na concatenação são convertidos para tipo string automaticamente.

Sintaxe:
CONCAT (‘valor1’, ‘valor2’, valor3)

Quando utilizamos o operador + para realizar concatenação devemos nos atentar para a conversão dos tipos que são diferentes do tipo texto.

Vamos simular a concatenação com o + e com o CONCAT. Três variáveis foram criadas: um do tipo data, um do tipo inteiro e um do tipo texto.

  • Modo de concatenação com + sem conversão. Alguns erros serão exibidos.

DECLARE @VALUE_DT DATE, @VALUE_ST VARCHAR(20), @VALUE_INT INT
SET @VALUE_DT = GETDATE()
SET @VALUE_ST = ‘SQL SERVER’
SET @VALUE_INT = 2017

SELECT @VALUE_ST + ‘ ‘ + @VALUE_INT + ‘ – ‘ + @VALUE_DT

Mensagem de erro exibida ao concatenar com o +, sem converter os tipos.
Mensagem de erro exibida ao concatenar com o +, sem converter os tipos.
Mensagem de erro exibida ao concatenar com o +, sem converter os tipos.
Mensagem de erro exibida ao concatenar com o +, sem converter os tipos.

 

  • Modo de concatenação com + utilizando função de conversão. Necessário utilização de funções de conversão Cast ou Convert.

DECLARE @VALUE_DT DATE, @VALUE_ST VARCHAR(20), @VALUE_INT INT
SET @VALUE_DT = GETDATE()
SET @VALUE_ST = ‘SQL SERVER’
SET @VALUE_INT = 2017

SELECT @VALUE_ST + ‘ ‘ + CONVERT(VARCHAR,@VALUE_INT) + ‘ – ‘ + CONVERT(VARCHAR,@VALUE_DT) AS ‘+’

Concatenação com o + utilizando funções de conversão.
Concatenação com o + utilizando funções de conversão.

 

  • Modo de concatenação com CONCAT

DECLARE @VALUE_DT DATE, @VALUE_ST VARCHAR(20), @VALUE_INT INT
SET @VALUE_DT = GETDATE()
SET @VALUE_ST = ‘SQL SERVER’
SET @VALUE_INT = 2017

SELECT CONCAT (@VALUE_ST, ‘ ‘, @VALUE_INT,’ – ‘,@VALUE_DT) AS ‘CONCAT’

Concatenando com o CONCAT.
Concatenando com o CONCAT.

Espero que tenham gostado da postagem.

Quem quiser mandar comentários, sugestões, criticas e complementos, fiquem a vontade, pois feedbacks positivos ou negativos engradecem meu conhecimento para que possa melhorar as postagem para vocês.

Até a próxima o/

Divulguem nossas Redes Sociais:

Nos sigam no Instagram: consultabd

Nos sigam no Twitter

Deixem um like nos vídeos e se inscrevam no nosso canal do Youtube

 

Publicidade