如何使用 Oracle 合并两列值?使用 || 操作符直接合并为一个字符串。使用 CONCAT() 函数合并多个字符串。使用 CASE 语句根据条件合并值。
如何使用 Oracle 合并两列值
直接合并
最简单的方法是使用 || 操作符,将两列连接为一个字符串:
SELECT column1 || column2 FROM table_name;
使用函数
也可以使用 CONCAT() 函数,它将多个字符串连接在一起:
SELECT CONCAT(column1, column2) FROM table_name;
使用条件
如果需要根据条件合并值,可以使用 CASE 语句:
SELECT CASE WHEN column1 IS NOT NULL THEN column1 WHEN column2 IS NOT NULL THEN column2 ELSE NULL -- 如果两列都为空,返回 NULL END FROM table_name;
示例
假设有以下表:
CREATE TABLE my_table ( id INT PRIMARY KEY, first_name VARCHAR(255), last_name VARCHAR(255) ); INSERT INTO my_table (id, first_name, last_name) VALUES (1, 'John', 'Doe'), (2, 'Jane', 'Smith'), (3, NULL, 'Wilson');
直接合并
SELECT first_name || last_name AS full_name FROM my_table; +-----------+ | full_name | +-----------+ | John Doe | | Jane Smith | | Wilson | -- 返回 NULL,因为 first_name 为 NULL +-----------+
使用函数
SELECT CONCAT(first_name, ' ', last_name) AS full_name FROM my_table; +-----------+ | full_name | +-----------+ | John Doe | | Jane Smith | | NULL Wilson | -- 返回 NULL,因为 first_name 为 NULL +-----------+
使用条件
SELECT CASE WHEN first_name IS NOT NULL THEN first_name WHEN last_name IS NOT NULL THEN last_name ELSE NULL END AS full_name FROM my_table; +-----------+ | full_name | +-----------+ | John Doe | | Jane Smith | | Wilson | -- 返回 "Wilson",因为 last_name 不为空 +-----------+
以上就是oracle如何把两列值合并的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号