Erster Tag des Monats: SELECT DATEADD(mm, DATEDIFF(mm, 0, GETDATE()), 0)
Letzter Tag des Monats: SELECT DATEADD(ms, -3, DATEADD(mm, DATEDIFF(m, 0, GETDATE()) + 1, 0))
Ersetzen Sie GETDATE() durch einen DateTime-Variablenwert.
Das habe ich vor langer Zeit von diese sehr praktische Seite die eine ganze Menge anderer Datumsberechnungen hat, wie "Montag der aktuellen Woche" und "erster Montag des Monats".