SQL Server:连接任意数量的列

时间:2011-06-08 21:00:00

标签: sql sql-server

我有一个产品表,一个pricelists表和一个连接它们的pricelist_products表。有任意数量的价格表和价格表不包括所有产品。我希望选择所有产品,并将pricelist_products的价格作为结果中的n列。这可能吗(没有程序)?我遇到过数据透视查询,但任意数量的列表似乎都不适合。

示例模式:

products
pid | name
----|------
1   | foo
2   | bar
3   | thing

pricelists
lid | name
----|------
1   | internal
2   | external
n   | ...

pricelist_products
lid | pid | price
----|-----| ------
1   | 1   | 1.00
1   | 2   | 2.00
2   | 1   | 3.00
2   | 3   | 4.00

期望的结果:

pid name internal external ...n
1   foo   1.00     3.00
2   bar   2.00     -
3   thing -        4.00

1 个答案:

答案 0 :(得分:0)