Eftersom detta är sql server 2008 kan du inte använda EOMonth (som introducerades i 2012 års version).
Du måste göra några datumtillägg och datumdiffar:
SELECT DATEDIFF(DAY,
GETDATE(),
DATEADD(MONTH,
1,
DATEADD(DAY, 1 - DAY(GETDATE()), GETDATE())
)
) - 1
förklaringar:DATEADD(DAY, 1 - DAY(GETDATE()), GETDATE())
får den första dagen i den aktuella månaden, omslutningen DATEADD
lägger till en månad, och omslutningen DATEDIFF
returnerar antalet dagar mellan det aktuella datumet och det första datumet i nästa månad. Det är därför du måste subtrahera 1 för att få rätt antal dagar.