Oracle 数据库
SELECT 'Hello' || ' ' || 'World' AS result FROM dual;
-- 结果: Hello World
Oracle 也支持 CONCAT() 函数,但它只支持两个参数
如果要拼接多个字符串,只能嵌套使用(如 CONCAT(CONCAT(‘A’,‘B’),‘C’)),所以实际开发中更推荐使用 || 运算符。
MySQL 数据库
MySQL 不支持 || 运算符(在 MySQL 中 || 默认是逻辑“或”的意思),而是使用 CONCAT() 函数。
SELECT CONCAT('Hello', ' ', 'World') AS result;
-- 结果: Hello World
SQL Server (MSSQL)
SELECT 'Hello' + ' ' + 'World' AS result;
-- 结果: Hello World
PostgreSQL / DB2 数据库
这两个数据库与 Oracle 类似,使用 || 运算符进行字符串拼接。
SELECT 'Hello' || ' ' || 'World' AS result;
跨库兼容建议:如果你希望你的 SQL 代码能够在多种数据库之间无缝迁移,强烈建议使用 CONCAT() 函数(如 MySQL、SQL Server 2012+、PostgreSQL 等都支持该函数)。但需要注意,标准 CONCAT() 在处理 NULL 值时,只要有一个参数为 NULL,整个结果就会变成 NULL。
792



被折叠的 条评论
为什么被折叠?



