Sql server 2012 我想把未知数量的行合并成一行

Sql server 2012 我想把未知数量的行合并成一行,sql-server-2012,Sql Server 2012,以下是一个数据示例: 表:司机 表:事故 此表中可能列出了此驾驶员的任意数量的事故,也可能没有 我需要看到的是: 我需要把司机信息和最近的10起事故(如果有的话)拉到这一行。我不确定是否需要使用数据透视表或获取。无论如何,我都不知道如何根据需要迭代到列中 非常感谢任何人的帮助 我使用的是SQL Server 2012,它最终将被拉入一个.XLS SSRS文件。我包含的管道仅用于显示,不会成为最终结果的一部分您应该使用PIVOT,因为它会很难看。如果编码C解决方案不可行,这是正确的选择 以下是一个

以下是一个数据示例:

表:司机

表:事故

此表中可能列出了此驾驶员的任意数量的事故,也可能没有

我需要看到的是:

我需要把司机信息和最近的10起事故(如果有的话)拉到这一行。我不确定是否需要使用数据透视表或获取。无论如何,我都不知道如何根据需要迭代到列中

非常感谢任何人的帮助


我使用的是SQL Server 2012,它最终将被拉入一个.XLS SSRS文件。我包含的管道仅用于显示,不会成为最终结果的一部分

您应该使用PIVOT,因为它会很难看。如果编码C解决方案不可行,这是正确的选择

以下是一个例子:

ID    | FNAME | LNAME
------+-------+------
WR558 | WILL  | RIKER
WW123 | WALT  | WHITE
DRIVER | ACCIDENT_NBR | ACCI_DATE  | ACCI_CITY | ACCI_ST
-------+--------------+------------+-----------+--------
WW123  | 4-7777       | 2014-01-01 | Chicago   | IL
WW123  | 4-7782       | 2014-01-03 | Houston   | TX
WW123  | 4-7988       | 2014-01-15 | El Paso   | NM
ID    | FNAME | LNAME  | ACCIDENT1_NBR | ACCI1_DATE | ACCI1_CITY | ACCI1_ST | ACCIDENT2_NBR | ACCI2_DATE | ACCI2_CITY | ACCI2_ST | ACCIDENT3_NBR | ACCI3_DATE | ACCI3_CITY | ACCI3_ST | ... | ACCIDENT10_NBR | ACCI10_DATE | ACCI10_CITY | ACCI10_ST
------+-------+--------+---------------+------------+------------+----------+---------------+
WR558 | WILL  |  RIKER |               |            |            |          |               | ...
WW123 | WALT  |  WHITE | 4-7777        | 2014-01-01 | Chicago    | IL       | 4-7782        | ...