Naast de reeds gegeven suggesties is er nog een andere mogelijkheid die ik uit uw vraag kan afleiden:
- U wilt nog steeds dat het resultaat een datum is
- Maar u wilt de Dagen, Uren 'weggooien' , etc
- Een jaar/maand alleen datumveld achterlaten
SELECT
DATEADD(MONTH, DATEDIFF(MONTH, 0, <dateField>), 0) AS [year_month_date_field]
FROM
<your_table>
Dit haalt het aantal hele maanden vanaf een basisdatum (0) en voegt ze vervolgens toe aan die basisdatum. Dus naar beneden afronden op de maand waarin de datum valt.
OPMERKING:in SQL Server 2008 heeft u nog steeds de TIJD als 00:00:00.000. Dit is niet precies hetzelfde als het "verwijderen" van een notatie van dag en tijd. Ook de DAG is ingesteld op de eerste. bijv. 2009-10-01 00:00:00.000