sql - 将多行中的信息重新排列为一行
问题描述
我有一张桌子,它的创建方式是任何拥有不止一辆车的人最终会出现在不止一行中:
表:
name car
----- -----
Joe Ford
Alex Ferrari
Alex Audi
Jimmy Fiat
有没有办法创建一个 SQL 查询,该查询返回重新排列为每行只有一个人的表,并连接汽车?
通缉表:
name car
----- -----
Joe Ford
Alex FerrariAudi
Jimmy Fiat
解决方案
使用GROUP BY
. 汽车类型的连接取决于您使用的数据库。在Postgres你可以写
SELECT name, string_agg(car, '') AS car FROM mytable GROUP BY name
推荐阅读
- python - 如何使用 for 循环将多个 pandas 数据帧中的各个列连接到预先存在的 pandas 数据帧?
- c# - 在 C# 代码中用 LINQ 替换使用 MERGE 的 SQL 进程
- node.js - nodejs:使用 Postman 从 Mongodb 检索 base64 图像
- r - rollapplyr 学生跨列 t 检验
- powershell - Powershell错误输出
- reactjs - 多个文件上传反应
- cupy - AMD GPU 上的 CuPy 导致 ImportError
- c# - 有没有办法检查一个力是否被施加到一个物体上?
- sql - 每个总和都带有 WHERE 子句的 SUM 函数?
- asp.net - CORS Angular 10 ASP.Net