grazie
Ciao Marco,
puoi castare il data type datetime a stringa mediante la funzione CONVERT
specificando lo stile che preferisci; se invece il risultato deve rimanere
datetime puoi aguzzare l'ingegno utilizzando le funzioni DATEADD e DATEDIFF:
SELECT
CONVERT(char(10), CURRENT_TIMESTAMP, 103) AS Stringa
, DATEADD(day, DATEDIFF(day, 0, CURRENT_TIMESTAMP), 0) AS Data;
/* Output:
Stringa Data
---------- -----------------------
01/09/2008 2008-09-01 00:00:00.000
(1 row(s) affected)
*/
Nel primo caso lo stile 103 corrisponde al formato data British/French (gli
altri formati li trovi sui Books Online) mentre nel secondo calcolo la
differenza in giorni tra la data odierna e la base date (01/01/1900 che
corrisponde a 0) alla quale sommo gli stessi giorni, riottenendo la data
odierna priva però dell'informazione oraria :-)
SQL Server 2008 introduce il nuovo data type Date che ti permette di
memorizzare esclusivamente date con un range di validità compreso tra
0001-01-01 e 9999-12-31.
> grazie
Prego.
Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo
http://italy.mvps.org