Kromě již uvedených návrhů existuje ještě jedna možnost, kterou mohu z vaší otázky odvodit:
- Stále chcete, aby výsledkem bylo datum
- Ale chcete „zahodit“ Dny, hodiny , atd
- Ponechání pole data pouze pro rok/měsíc
SELECT
DATEADD(MONTH, DATEDIFF(MONTH, 0, <dateField>), 0) AS [year_month_date_field]
FROM
<your_table>
Tím se získá počet celých měsíců od základního data (0) a poté se přidají k tomuto základnímu datu. Tedy zaokrouhlení dolů na měsíc, ve kterém je datum.
POZNÁMKA:V SQL Server 2008 budete mít ČAS stále připojený jako 00:00:00.000Toto není úplně stejné jako „odstranění“ libovolného zápisu dne a času. Také DEN nastavený na první. např. 2009-10-01 00:00:00.000