В SQL Server 2012 можете да използвате EOMONTH (Transact-SQL), за да получите последния ден от месеца, а след това можете да използвате DAY (Transact-SQL), за да получите броя на дните в месеца.
DECLARE @ADate DATETIME
SET @ADate = GETDATE()
SELECT DAY(EOMONTH(@ADate)) AS DaysInMonth