The CONCAT SQL Function in MySQL and MariaDB - Concatenation of strings |
|
| CONCAT | Syntax: | CONCAT(Strings ('str1','str2', ...)) | Return value: | CHAR, BINARY | Function type: | String function | |
| | The CONCAT() function returns a string resulting from concatenating two or more arguments.
If either argument contains a non-binary string, the result is a string in the argument's character set.
If arguments contain different character sets, the result is returned in the "larger" character set.
Example: CONCAT(Latin1, UTF8) = UTF8.
If all arguments contain binary strings, the result is a binary string.
Numeric values in arguments are converted to their equivalent binary string form.
To avoid this, an explicit cast can be used.
If either argument is NULL, the CONCAT() function returns NULL.
To concatenate strings with a separator, the CONCAT_WS() function can be used. | SQL Examples for the CONCAT function |
|
select concat('Test');
select concat('Test', '-Test');
select concat('Test', '-', 123);
select concat('Test', '-', now());
select concat('Test', null, '-Test');
select concat('Test', ifnull(null,''), '-Test');
|
|
concat('Test') |
varchar(4) BINARY |
Test |
|
|
concat('Test', '-Test') |
varchar(9) BINARY |
Test-Test |
|
|
concat('Test', '-', 123) |
varchar(8) BINARY |
Test-123 |
|
|
concat('Test', '-', now()) |
varchar(24) BINARY |
Test-2023-03-22 12:42:03 |
|
|
concat('Test', null, '-Test') |
varchar(9) BINARY |
NULL |
|
|
concat('Test', ifnull(null,''), '-Test') |
varchar(9) BINARY |
Test-Test |
|
|
| Examples for the output of character sets with CONCAT() |
1
2
3
4
5
6
7
8
9
10
11
12
13
|
|
select charset(concat('Test', '-Test'));
select charset(concat('Test', '-', 123));
select charset(concat('Test', '-', now()));
select charset(concat(convert('Test' using utf8), '-Test'));
select charset(concat(convert('Test' using latin1), '-', 123));
select charset(concat(`eng`, '-', 123)) from menu where id=5;
select concat(convert('Test' using utf8), convert('-Test' using latin1));
select charset(concat(123, convert('Test' using utf8), convert('-Test' using latin1)));
select charset(concat(123, convert('Test' using latin1), convert('-Test' using utf8)));
select charset(concat(123, 'Test', convert('-Test' using latin1)));
|
|
charset(concat('Test', '-Test')) |
varchar(64) BINARY |
binary |
|
|
charset(concat('Test', '-', 123)) |
varchar(64) BINARY |
binary |
|
|
charset(concat('Test', '-', now())) |
varchar(64) BINARY |
binary |
|
|
charset(concat(convert('Test' using utf8), '-Test')) |
varchar(64) BINARY |
utf8 |
|
|
charset(concat(convert('Test' using latin1), '-', 123)) |
varchar(64) BINARY |
latin1 |
|
|
charset(concat(`eng`, '-', 123)) |
varchar(64) BINARY |
latin1 |
|
|
concat(convert('Test' using utf8), convert('-Test' using latin1)) |
varchar(9) BINARY |
Test-Test |
|
|
charset(concat(123, convert('Test' using utf8), convert('-Test' using latin1))) |
varchar(64) BINARY |
utf8 |
|
|
charset(concat(123, convert('Test' using latin1), convert('-Test' using utf8))) |
varchar(64) BINARY |
utf8 |
|
|
charset(concat(123, 'Test', convert('-Test' using latin1))) |
varchar(64) BINARY |
latin1 |
|
|
| The examples were created with the MyWAY SQL manager: | How to use the CONCAT() function in MySQL and MariaDB databases | The CONCAT() function in MySQL and MariaDB is useful for combining strings into more meaningful output to create or perform string manipulations, whether they are literal values, variables, or column values. The function accepts two or more string arguments and returns a single string that is the result of concatenating the input strings. Any number of strings can be concatenated by providing them as separate arguments to the CONCAT() function. | | Further MySQL und MariaDB SQL String functions | CHAR | CHAR(Character code, [, Charset]) | More about CHAR Function |
| CHR | CHR(Character code) | More about CHR Function |
| CONCAT_WS | CONCAT_WS(Separator, Strings ('str1','str2', ...)) | More about CONCAT_WS Function |
| ELT | ELT(Index, Strings ('str1','str2', ...)) | More about ELT Function |
| EXPORT_SET | EXPORT_SET(Bits, On, Off [, Separator] [, Number of bits]) | More about EXPORT_SET Function |
| EXTRACTVALUE | EXTRACTVALUE(XML, XPath) |
| FIELD | FIELD(Search string, Strings ('str1','str2', ...)) | More about FIELD Function |
| FORMAT | FORMAT(Number, Decimals [, Region]) | More about FORMAT Function |
| INSERT | INSERT(String, Position, Length, String to insert) | More about INSERT Function |
| LCASE | LCASE(String) | More about LCASE Function |
| LEFT | LEFT(String, Length) | More about LEFT Function |
| LOAD_FILE | LOAD_FILE(File name) |
| LOWER | LOWER(String) | More about LOWER Function |
| LPAD | LPAD(String, Length, String to append) | More about LPAD Function |
| LPAD_ORACLE | LPAD_ORACLE(String, Length, String to append) | More about LPAD_ORACLE Function |
| LTRIM | LTRIM(String) | More about LTRIM Function |
| MAKE_SET | MAKE_SET(Bits, Strings ('str1','str2', ...)) | More about MAKE_SET Function |
| MID | MID(String, Position [, Length]) | More about MID Function |
| QUOTE | QUOTE(String) | More about QUOTE Function |
| REPEAT | REPEAT(String, Number) | More about REPEAT Function |
| REPLACE | REPLACE(String, Search, Replace) | More about REPLACE Function |
| REVERSE | REVERSE(String) | More about REVERSE Function |
| RIGHT | RIGHT(String, Length) | More about RIGHT Function |
| RPAD | RPAD(String, Length, String to append) | More about RPAD Function |
| RPAD_ORACLE | RPAD_ORACLE(String, Length, String to append) | More about RPAD_ORACLE Function |
| RTRIM | RTRIM(String) | More about RTRIM Function |
| SOUNDEX | SOUNDEX(String) | More about SOUNDEX Function |
| SPACE | SPACE(Number) | More about SPACE Function |
| SUBSTR | SUBSTR(String, Position, Length) | More about SUBSTR Function |
| SUBSTRING | SUBSTRING(String, Position, Length) | More about SUBSTRING Function |
| SUBSTRING_INDEX | SUBSTRING_INDEX(String, Delimiter, Number) | More about SUBSTRING_INDEX Function |
| TRIM | TRIM([Type] [, Delete character], , String) | More about TRIM Function |
| TRIM_ORACLE | TRIM_ORACLE([Type] [, Delete character], , String) | More about TRIM_ORACLE Function |
| UCASE | UCASE(String) | More about UCASE Function |
| UPPER | UPPER(String) | More about UPPER Function |
| WEIGHT_STRING | WEIGHT_STRING(String [AS Format] [LEVEL Level] [Sorting]) | More about WEIGHT_STRING Function |
| ASCII | ASCII(String) | More about ASCII Function |
| BIT_LENGTH | BIT_LENGTH(String) | More about BIT_LENGTH Function |
| CHAR_LENGTH | CHAR_LENGTH(String) | More about CHAR_LENGTH Function |
| CHARACTER_LENGTH | CHARACTER_LENGTH(String) | More about CHARACTER_LENGTH Function |
| FIND_IN_SET | FIND_IN_SET(Search string, Set of values) | More about FIND_IN_SET Function |
| INSTR | INSTR(String, Search string) | More about INSTR Function |
| LENGTH | LENGTH(String) | More about LENGTH Function |
| LENGTHB | LENGTHB(String) | More about LENGTHB Function |
| LOCATE | LOCATE(Search string, String [, Position]) | More about LOCATE Function |
| OCTET_LENGTH | OCTET_LENGTH(String) | More about OCTET_LENGTH Function |
| ORD | ORD(String) | More about ORD Function |
| POSITION | POSITION(Search string IN String) | More about POSITION Function |
|
|
| | More information about the CONCAT SQL function: and and |
|
|
|
|