以下是数据示例:
表:驱动程序
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 | ...
我需要将驾驶员信息和最近发生的10起事故(如果有的话)拉到这一行。我不确定是否需要使用PIVOT表或FETCH。无论哪种方式,我都不确定如何根据需要迭代到列中。
非常感谢任何人的帮助!
我正在使用SQL Server 2012,这最终将被拉入.XLS SSRS文件。我包含的管道仅用于显示,不会成为最终结果的一部分