You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过SQL Server实现合并重复FirstName的查询结果?

问题描述

enter image description here

我希望得到如上图所示的查询结果,以下是我的SQL Server脚本:

-- Create table
CREATE TABLE Employee (
    EmployeeID INT PRIMARY KEY,
    FirstName VARCHAR(50),
    LastName VARCHAR(50)
);

-- Insert records
INSERT INTO Employee (EmployeeID, FirstName, LastName)
VALUES (1, 'John', 'Doe');

INSERT INTO Employee (EmployeeID, FirstName, LastName)
VALUES (2, 'Jane', 'Smith');

INSERT INTO Employee (EmployeeID, FirstName, LastName)
VALUES (3, 'Hamza', 'Johnson');

INSERT INTO Employee (EmployeeID, FirstName, LastName)
VALUES (4, 'Hamza', 'Tes');
解决方案

由于无法查看图片的具体结果样式,我提供两种常见需求的实现脚本,你可以根据实际情况选择:

1. 合并相同FirstName对应的LastName(适用于SQL Server 2017及以上版本)

如果图片是将同一FirstName下的所有LastName拼接展示,使用STRING_AGG函数:

SELECT
    FirstName,
    STRING_AGG(LastName, ', ') AS CombinedLastNames
FROM Employee
GROUP BY FirstName
ORDER BY FirstName;

执行结果:

FirstNameCombinedLastNames
HamzaJohnson, Tes
JaneSmith
JohnDoe

2. 统计每个FirstName的员工数量

如果图片是统计各FirstName对应的员工总数,使用COUNT聚合函数:

SELECT
    FirstName,
    COUNT(EmployeeID) AS EmployeeCount
FROM Employee
GROUP BY FirstName
ORDER BY FirstName;

执行结果:

FirstNameEmployeeCount
Hamza2
Jane1
John1

如果你的需求是其他样式(比如全量展示并按特定规则排序),可以补充描述图片的具体内容,我会调整对应的SQL脚本。


内容的提问来源于stack exchange,提问作者Hamza El Hammoudi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 16:54:54