SQL SERVER - 将一个表中的记录用作另一个表中的列名并进行相应的排序

时间:2015-07-29 14:20:38

标签: sql-server-2008

我需要一些SQL服务器问题的帮助。目前我有一张带有国家/地区名称的表格(让我们称之为#34;国家",为了博览会的缘故),以及一张有州或省的表格(名为"州和#34) ;),包含指向其相应国家/地区的FK。我想生成一个新表,其中列标题是" countries"中每个记录的名称。 in,并且每列的内容是属于该特定国家的州。它应该出类似的东西:



<table><tbody><tr><th>Country 1</th><th>Country 2</th><th>Country 3</th></tr><tr><td>State 1 From Country 1</td><td>State 1 From Country 2</td><td>State 1 From Country 3</td></tr><tr><td>State 2 From Country 1</td><td>State 2 From Country 2</td><td>State 2 From Country 3</td></tr><tr><td>State 3 From Country 1</td><td>State 3 From Country 2</td><td>State 3 From Country 3</td></tr><tr><td>State 4 From Country 1</td><td> </td><td>State 4 From Country 3</td></tr><tr><td>State 5 From Country 1</td><td> </td><td>State 5 From Country 3</td></tr><tr><td>State 6 From Country 1</td><td> </td><td> </td></tr><tr><td>State 7 From Country 1</td><td> </td><td> </td></tr><tr><td> </td><td> </td><td> </td></tr></tbody></table>
&#13;
&#13;
&#13;

我知道我可以用PIVOT做到这一点,但问题是我有大约150个国家,并且单独输入每列的名称是毫无意义的。希望你能帮帮我。

0 个答案:

没有答案