SQL 合并相关行是指将多行数据中的共同部分合并成一行。通常用于数据报表的生成。以下是SQL合并相关行的攻略:
- 使用GROUP BY语句
使用GROUP BY语句将相同的值合并在一起。例如,我们有一个表格包含国家、城市和人口数据:
Country | City | Population |
---|---|---|
China | Beijing | 21540000 |
China | Shanghai | 24256800 |
China | Guangzhou | 14043500 |
Japan | Tokyo | 13350000 |
Japan | Osaka | 8865000 |
Korea | Seoul | 9796000 |
我们可以使用如下SQL语句合并成一个国家的数据:
SELECT Country, SUM(Population) AS TotalPopulation
FROM table1
GROUP BY Country;
输出结果如下:
Country | TotalPopulation |
---|---|
China | 59840300 |
Japan | 22215000 |
Korea | 9796000 |
- 使用合并函数
合并函数是在查询多行时,将它们压缩成一行的函数。合并函数有以下几种:
- CONCAT():将多个值连接在一起
- GROUP_CONCAT():用逗号分隔的字符串形式返回一个值
- MAX():返回一组值中的最大值
- MIN():返回一组值中的最小值
例如,我们有一个表格包含职工姓名、部门和工资数据:
Name | Department | Salary |
---|---|---|
Tom | IT | 8000 |
Mary | HR | 9000 |
Bob | IT | 7000 |
Alice | HR | 11000 |
我们可以使用如下SQL语句来将同一部门的工资进行合并:
SELECT Department, GROUP_CONCAT(Name) AS EmployeeName, COUNT(*) AS EmployeeCount, SUM(Salary) AS TotalSalary
FROM table2
GROUP BY Department;
输出结果如下:
Department | EmployeeName | EmployeeCount | TotalSalary |
---|---|---|---|
IT | Tom, Bob | 2 | 15000 |
HR | Mary, Alice | 2 | 20000 |
以上是SQL合并相关行的攻略,希望对您有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:SQL 合并相关行 - Python技术站