I SQL Server 2012 kan du använda EOMONTH (Transact-SQL) för att få den sista dagen i månaden och sedan kan du använda DAY (Transact-SQL) för att få antalet dagar i månaden.
DECLARE @ADate DATETIME
SET @ADate = GETDATE()
SELECT DAY(EOMONTH(@ADate)) AS DaysInMonth