Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Concatenação de strings

Olá.

Qual a diferença entre usar o operador '+', para concatenar strings, e usar a função CONCAT?

2 respostas
solução!

Oii Orlando, tudo bom?

A função CONCAT é mais fácil de usar do que o operador de concatenação (+), pois ela ignora dados nulos e concatena diferentes tipos de dados sem que precise realizar a conversão. Segue um exemplo:

SELECT 
'Nota Fiscal: ' +
CAST(NUMERO AS VARCHAR) + ' ' + 
CAST(QUANTIDADE AS VARCHAR) + ' ' +
CAST(PREÇO AS VARCHAR)
FROM [ITENS NOTAS FISCAIS];

Imgur

Note que precisei fazer a conversão dos campos numéricos para VARCHAR para que a concatenação seja feita. Se não for utilizado o CAST, será retornado esse erro:

Falha ao converter o varchar valor 'Nota Fiscal: ' para o tipo de dados int.

Com o CONCAT, essa conversão não precisa ser feita.

SELECT
CONCAT
(
    'Nota Fiscal: ', NUMERO, ' ', QUANTIDADE, ' ', PREÇO
)
FROM [ITENS NOTAS FISCAIS];

Imgur

Espero ter ajudado. Qualquer coisa me fala, tá bom? ^^

Olá, Gabriela.

Não sabia desta facilidade do CONCAT e ficou bem claro pra mim. Obrigado!!