- Categorias:
CONCAT , ||¶
Concatena uma ou mais cadeias de caracteres, ou concatena um ou mais valores binários.
O operador || fornece uma sintaxe alternativa para CONCAT e exige pelo menos dois argumentos.
- Consulte também:
Sintaxe¶
CONCAT( <expr> [ , <expr> ... ] )
<expr> || <expr> [ || <expr> ... ]
Argumentos¶
exprThe input expressions must be all strings, or all binary values.
Retornos¶
The data type of the returned value is the same as the data type of the input values.
If any input value is NULL, the function returns NULL.
Notas de uso¶
Funções de metadados tais como GET_DDL aceitam apenas constantes como entrada. A entrada concatenada gera um erro.
Detalhes do agrupamento¶
The collation specifications of all input arguments must be compatible.
The collation of the result of the function is the highest-precedence collation of the inputs.
Exemplos¶
Concatenar duas cadeias de caracteres:
SELECT CONCAT('George Washington ', 'Carver');
+----------------------------------------+
| CONCAT('GEORGE WASHINGTON ', 'CARVER') |
|----------------------------------------|
| George Washington Carver |
+----------------------------------------+
Concatenar cinco cadeias de caracteres usando variáveis de sessão para três delas:
SET var_first_name = 'George';
SET var_middle_name = 'Washington';
SET var_last_name = 'Carver';
SELECT CONCAT($var_first_name, ' ', $var_middle_name, ' ', $var_last_name) AS concat_name;
+--------------------------+
| CONCAT_NAME |
|--------------------------|
| George Washington Carver |
+--------------------------+
Concatenação de duas colunas VARCHAR. Primeiro, crie uma tabela e insira os dados:
CREATE OR REPLACE TABLE concat_function_example (s1 VARCHAR, s2 VARCHAR, s3 VARCHAR);
INSERT INTO concat_function_example (s1, s2, s3) VALUES
('co', 'd', 'e'),
('Colorado ', 'River ', NULL);
Execute uma consulta:
SELECT CONCAT(s1, s2)
FROM concat_function_example;
+-----------------+
| CONCAT(S1, S2) |
|-----------------|
| cod |
| Colorado River |
+-----------------+
Concatenar mais de duas cadeias de caracteres:
SELECT CONCAT(s1, s2, s3)
FROM concat_function_example;
+--------------------+
| CONCAT(S1, S2, S3) |
|--------------------|
| code |
| NULL |
+--------------------+
Use a função IFF com a função CONCAT para concatenar cadeias de caracteres que não sejam NULL:
SELECT CONCAT(
IFF(s1 IS NULL, '', s1),
IFF(s2 IS NULL, '', s2),
IFF(s3 IS NULL, '', s3)) AS concat_non_null_strings
FROM concat_function_example;
+-------------------------+
| CONCAT_NON_NULL_STRINGS |
|-------------------------|
| code |
| Colorado River |
+-------------------------+
Usar o operador de concatenação || em vez da função:
SELECT 'This ' || 'is ' || 'another ' || 'concatenation ' || 'technique.';
+--------------------------------------------------------------------+
| 'THIS ' || 'IS ' || 'ANOTHER ' || 'CONCATENATION ' || 'TECHNIQUE.' |
|--------------------------------------------------------------------|
| This is another concatenation technique. |
+--------------------------------------------------------------------+