mysql如何使用concat拼接字符串

来源:这里教程网 时间:2026-02-28 20:12:20 作者:

在 MySQL 中,CONCAT() 函数用于将两个或多个字符串连接成一个字符串。如果任何一个参数为 NULL,整个结果就会变成 NULL。为了避免这种情况,可以使用 CONCAT_WS() 或结合 IFNULL() 处理空值。

基本语法:CONCAT(str1, str2, ...)

将多个字符串拼接在一起,返回拼接后的结果。

SELECT CONCAT('Hello', ' ', 'World'); — 返回 "Hello World" SELECT CONCAT(first_name, ' ', last_name) FROM users; — 拼接姓名

处理 NULL 值:使用 IFNULL

当字段可能为 NULL 时,直接使用 CONCAT 会导致结果为 NULL。可以用 IFNULL 将 NULL 转为空字符串或其他默认值。

SELECT CONCAT(IFNULL(first_name, ''), ' ', IFNULL(last_name, '')) FROM users; 这样即使某个字段为空,也能正常拼接。

使用分隔符:CONCAT_WS()

CONCAT_WS() 表示“带分隔符的拼接”,第一个参数是分隔符,后面是需要拼接的字段。

SELECT CONCAT_WS('-', '2024', '04', '01'); — 返回 "2024-04-01" SELECT CONCAT_WS(' ', first_name, middle_name, last_name) FROM users; — 自动跳过 NULL 值

基本上就这些。根据实际场景选择 CONCAT 还是 CONCAT_WS,注意处理空值问题即可。不复杂但容易忽略细节。

相关推荐