是否有可能做一个支点和选择列表从表中,而不是使用单一的价值?SQL PIVOT选择列表(SELECT)
像这样(不正确的语法错误):
SELECT *
FROM (
SELECT RepID, MilestoneID, ResultID FROM RM
) AS src
PIVOT (
MAX(ResultID) FOR MilestoneID IN (SELECT id FROM m)
) AS pvt
这一次编译,但对我不起作用:
SELECT *
FROM (
SELECT RepID, MilestoneID, ResultID FROM RM
) AS src
PIVOT (
MAX(ResultID) FOR MilestoneID IN ([1], [2], [3], [4])
) AS pvt
PS:我不想使用动态SQL,是有没有办法做到这一点,而不使用动态SQL?
不幸的是,不幸的是,您需要指定'IN'子句中的值。您可以使用动态SQL来检查这些值,然后执行结果语句。 – Yuck 2011-05-19 14:55:55