¿Cómo realizo este tipo de comparación mes a mes en SQL Server?

¿Cómo realizo este tipo de comparación mes a mes en SQL Server?

Digamos que tengo datos en una tabla como esta:

| DateTimePurchased    | Amount |
|----------------------|--------|
| 1/1/2017  3:23:15 PM | 657    |
| 1/1/2017  3:38:29 PM | 730    |

Y quiero ejecutar una consulta que resulte así:

| DayOfMonth | Feb 2017 | Mar 2017 |
|------------|----------|----------|
| 1          | 2344     | 4342     |
| 2          | 3435     | 4564     |
| 3          | 5675     | 6787     |

etc...

¿Cómo escribiría la consulta para SQL Server?

Mostrar la mejor respuesta

Esto es mucho más fácil de hacer en un informe de SSRS

Oh, eso es lo que quieres. Solo haces:

select day(DateTimePurchased) as dy,
       sum(case when DateTimePurchased >= '2017-02-01' and  DateTimePurchased < '2017-03-01'
                then amount
           end) as amount_201702,
       sum(case when DateTimePurchased >= '2017-03-01' and  DateTimePurchased < '2017-04-01'
                then amount
           end) as amount_201703
from t
group by day(DateTimePurchased)
order by dy;

¿Olvidaste el día() en dy de select?

@KeithL. . . Sí. Gracias.