2026-04-21 16:24:27
在SQL中,对查询结果进行字符串拼接的实现方式取决于具体数据库类型。以下是常见数据库的解决方案:
1. 单行字段拼接将多个字段合并成一个字符串(适用于单行记录):
-- MySQL / SQL Server / PostgreSQL / SQLiteSELECT CONCAT(first_name, ' ', last_name) AS full_name FROM users;-- Oracle / PostgreSQL (兼容写法)SELECT first_name || ' ' || last_name AS full_name FROM users;-- SQL Server (旧版)SELECT first_name + ' ' + last_name AS full_name FROM users;2. 多行结果聚合拼接将多行记录的某一列值合并成单个字符串(分组拼接):
-- MySQL / SQLiteSELECT department, GROUP_CONCAT(name SEPARATOR ', ') AS employeesFROM employeesGROUP BY department;-- SQL Server (2017+)SELECT department, STRING_AGG(name, ', ') AS employeesFROM employeesGROUP BY department;-- PostgreSQLSELECT department, STRING_AGG(name, ', ') AS employeesFROM employeesGROUP BY department;-- OracleSELECT department, LISTAGG(name, ', ') WITHIN GROUP (ORDER BY name) AS employeesFROM employeesGROUP BY department;3. 注意事项通过以上方法,可灵活实现SQL中的字符串拼接需求。