Concat() Function-SQL

-
在SQL中,
CONCAT()函数用于将两个或多个字符串连接在一起。 -
不同数据库管理系统可能有些许差异,但基本用法和语法通常是相似的。
语法
CONCAT(string1, string2, ...)
string1,string2, …: 这些是需要连接的字符串参数。- 可以连接两个或多个字符串。

eg.
-
简单连接:
SELECT CONCAT('Hello', ' ', 'World') AS concatenated_string;结果为
"Hello World"。 -
连接列中的值:
假设有一个users表,包含first_name和last_name列,你可以这样使用CONCAT():SELECT CONCAT(first_name, ' ', last_name) AS full_name FROM users;返回每个用户的全名,包含其
first_name和last_name,并在它们之间添加一个空格。 -
与其他函数一起使用:
SELECT CONCAT('User ID: ', id, ', Name: ', first_name, ' ', last_name) AS user_details FROM users;
将用户的 ID、姓名等信息连接成一个完整的用户详情字符串。
在不同数据库中的使用示例
-
MySQL:
SELECT CONCAT('Hello', ' ', 'World') AS concatenated_string; -
PostgreSQL:
SELECT CONCAT('Hello', ' ', 'World') AS concatenated_string; -
SQL Server:
SELECT CONCAT('Hello', ' ', 'World') AS concatenated_string;
Tips:
在MySQL中,CONCAT() 函数在处理包含 NULL 参数时,会返回 NULL。
SELECT CONCAT('yushifu', '.', 'csdn.com', NULL);
这条SQL语句中,CONCAT() 函数被用来连接四个参数:'yushifu'、.、'csdn.com' 和 NULL。
当连接到 NULL 时,根据SQL的规定,NULL 与任何其他值连接都会产生 NULL。因此,整个 CONCAT() 函数的结果是 NULL。
如果要避免结果是 NULL 的情况,可以使用 COALESCE() 函数或 IFNULL() 函数来处理可能的 NULL 值。
SELECT CONCAT('yushifu', '.', 'csdn.com', COALESCE(NULL, ''));
-- 或者
SELECT CONCAT('yushifu', '.', 'csdn.com', IFNULL(NULL, ''));
COALESCE() 和 IFNULL() 函数会将 NULL 转换成空字符串 '',这样 CONCAT() 函数就不会返回 NULL 了。