【发布时间】:2020-04-21 11:59:55
【问题描述】:
我需要从使用左连接的 SQL Server 中的 2 个表中选择/合并数据,但数据作为多条记录返回。
以下是示例表
Table1
Id Name Age
1 Sk 20
2 Rb 30
Table2
ID Bike Price Table1Id
1 RX 200 1
2 CD 250 1
3 FZ 300 1
4 R1 400 2
The desired output is
ID Name Age Bike1 Price1 Bike2 Price2 Bike3 Price3
1 Sk 20 RX 200 CD 250 FZ 300
2 Rb 30 R1 400 NULL NULL NULL NULL
我正在使用的查询的示例格式
SELECT A.ID, A.Name, B.Bike, B.Price FROM Table1 A LEFT JOIN Table2 B ON
A.id = B.Table1Id order by A.id
我从上述查询中得到的输出是
ID Name Age Bike Price
1 Sk 20 RX 200
1 Sk 20 CD 250
1 Sk 20 FZ 300
2 Rb 30 R1 400
我需要将数据作为特定 ID 的一条记录,而不是多条记录(如所需输出所示)。厌倦了使用偏移量,但偏移量只会返回有限的结果而不是整个记录。
关于如何实现这一点有什么建议吗?
【问题讨论】:
-
如果有超过三辆自行车怎么办?
-
我知道最多有三辆自行车
标签: sql sql-server join azure-sql-database left-join