Compartilhar via


Operador de concatenação de cadeias de caracteres (Mecanismo de Banco de Dados)

O operador de concatenação de cadeias de caracteres é o sinal de mais (+). Você pode combinar ou concatenar duas ou mais cadeias de caracteres em uma única cadeia de caracteres. Também pode concatenar cadeias binárias. A seguir, é mostrado um exemplo de concatenação.

SELECT ('abc' + 'def');

Conjunto de resultados.

------
abcdef

(1 row(s) affected)

A consulta a seguir exibe os nomes dos primeiros quatro contatos na coluna Moniker, na ordem sobrenome e nome, com uma vírgula e um espaço depois do sobrenome.

USE AdventureWorks;
GO
SELECT LastName + ', ' + FirstName AS Moniker 
FROM Person.Contact
WHERE ContactID < 5;

Conjunto de resultados.

Moniker
-------------------------
Achong, Gustavo
Abel, Catherine
Abercrombie, Kim
Acevedo, Humberto

(4 row(s) affected)

Outros tipos de dados, como datetime e smalldatetime, devem ser convertidos em cadeias de caracteres usando a função de conversão CAST antes que eles possam ser concatenados com uma cadeia de caracteres.

USE AdventureWorks;
GO
SELECT 'The due date is ' + CAST(DueDate AS varchar(128))
FROM Sales.SalesOrderHeader
WHERE SalesOrderID = 43659;
GO

Conjunto de resultados.

---------------------------------------
The due date is Jul 13 2001 12:00AM

(1 row(s) affected)

A cadeia de caracteres vazia (") é avaliada como um espaço único:

SELECT 'abc' + '' + 'def'

Conjunto de resultados.

-------
abcdef

(1 row(s) affected)
ObservaçãoObservação

Se uma cadeia de caracteres vazia (") for interpretada como um caractere em branco único ou como um caractere vazio, será determinado pela configuração de nível de compatibilidade de sp_dbcmptlevel. Para obter esse exemplo, se sp_dbcmptlevel for 65, literais vazios serão tratados como um único espaço em branco.

Quando ambas as cadeias de caracteres de entrada têm o mesmo agrupamento, a cadeia de caracteres de saída tem o mesmo agrupamento das entradas. Quando as cadeias de entrada têm agrupamentos diferentes, as regras de precedência de agrupamento determinam o agrupamento da cadeia de caracteres de saída. Você também pode atribuir um agrupamento específico usando a cláusula COLLATE.