>Come posso fare?
Ciao Fabio,
Mi sembra di capire che non hai capito il funzionamento di quella funzione (eppure te lo avevo spiegato e mi avevi dato conferma di averla capita ).
Quella funzione non fa altro che calcolare il numero di mesi intercorsi dall'1 gennaio 1900 alla data passata come argomento; successivamente somma questi mesi nuovamente all'1 gennaio 1900, ottenendo di conseguenza il primo del mese.
Ora, se vuoi ottenere il primo del mese successivo, somma 1 al numero di mesi:
USE tempdb;
GO
CREATE FUNCTION dbo.GetFirstNextMonthDay(
@Today datetime
)
RETURNS datetime
BEGIN
RETURN DATEADD(month, DATEDIFF(month, 0, @Today) + 1, 0);
END
GO
SELECT dbo.GetFirstNextMonthDay(CURRENT_TIMESTAMP) AS FirstNextMonthDay;
/* Output:
FirstNextMonthDay
-----------------------
2008-07-01 00:00:00.000
(1 row(s) affected)
*/
DROP FUNCTION dbo.GetFirstNextMonthDay;
E' chiaro?!
Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org