CONCAT(sl, s2,...) 函数用来将多个字符串合并成一个字符串,然后将合并后的字符串返回。
若有任何一个参数为 NULL,则返回值为 NULL。
若所有参数均为非二进制字符串,则结果为非二进制字符串。
若自变量中含有任一二进制字符串,则结果为一个二进制字符串。
注意:CONCAT参数支持一个到多个参数
(1)使用 CONCAT 函数将三个字符串连接起来,如下:
mysql> select CONCAT('hello', ' ', 'world'); +-------------------------------+ | CONCAT('hello', ' ', 'world') | +-------------------------------+ | hello world | +-------------------------------+ 1 row in set (0.02 sec)
由运行结果可知,使用 CONCAT 将字符串“hello”、“ ”和“world”三个字符串连接成“hello world”长字符串。
(2)使用 CONCAT 函数连接带有NULL的字符串,如下:
mysql> select CONCAT('hello', ' ', NULL); +----------------------------+ | CONCAT('hello', ' ', NULL) | +----------------------------+ | NULL | +----------------------------+ 1 row in set (0.03 sec)
由运行结果可知,CONCAT('hello', ' ', NULL) 中最后一个参数为 NULL,因此返回结果为 NULL。
(3)CONCAT 函数中的参数也可以是其他 MySQL 的内置函数,如下:
mysql> select CONCAT('date=', now()); +--------------------------+ | CONCAT('date=', now()) | +--------------------------+ | date=2022-04-21 12:02:08 | +--------------------------+ 1 row in set (0.04 sec)
由运行结果可知,CONCAT函数将 now() 函数的返回值与“date=”字符串进行连接。