Tabela przestawna MS SQL Server z podzapytaniem w klauzuli kolumny

Jestem pewien, że jest to prosta technika, ale jak dotąd nie mogę znaleźć odpowiedzi!

mam

TIMESTAMP           | POINTNAME | VALUE
2012-10-10 16:00:00   AHU01       20
2012-10-10 16:00:00   AHU02       25
2012-10-10 16:00:15   AHU01       26
2012-10-10 16:00:15   AHU02       35

itp ... (za około 800 POINTNAMES)

z wieloma nazwami punktowymi nie chcę wypisywać każdego z nich w klauzuli 'IN' pivot 'FOR' (jak podano poniżej w składni), ale chciałbym użyć podzapytania.

Tak więc chciałbym, aby wszystkie wartości POINTNAME były kolumnami z kolumną TIMESTAMP AND VALUE, więc otrzymam jedną wartość TIMESTAMP i wiele kolumn z każdym POINTNAME, jest tylko jedna wartość na POINTNAME PER TIMESTAMP, więc nie muszę agregować cokolwiek więc tak po prostu wybierasz max?

Coś jak:

SELECT [TIMESTAMP] FROM ( SELECT * FROM POINT_TABLE)
PIVOT( Max[Value] FOR [POINTNAME] IN (SELECT DISTINCT [POINTNAME] FROM POINT_TABLE)

wytworzyłoby

   TIMESTAMP              AHU01          AHU02
 2012-10-10 16:00:00        20             25
 2012-10-10 16:15:00        26             35

Zdaję sobie sprawę, że prawdopodobnie nie jest to takie proste, ale mam nadzieję, że otrzymasz to, co próbuję osiągnąć?

PIVOT SYNTAX:

SELECT <non-pivoted column>,
    [first pivoted column] AS <column name>,
    [second pivoted column] AS <column name>,
    ...
    [last pivoted column] AS <column name>
FROM
    (<SELECT query that produces the data>) 
    AS <alias for the source query>
PIVOT
(
    <aggregation function>(<column being aggregated>)
FOR 
[<column that contains the values that will become column headers>] 
    IN ( [first pivoted column], [second pivoted column],
    ... [last pivoted column])
) AS <alias for the pivot table>
<optional ORDER BY clause>;

questionAnswers(1)

yourAnswerToTheQuestion