Conversione DECIMAL in DATETIME

giovedì 20 novembre 2008 - 11.46

fotw Profilo | Newbie

Ho la necessita di di convertire un campo decimal (nel formato yyyymmdd) in formato data, quale e' la soluzione migliore?

CREATE TABLE MyTable (Data decimal(08))
GO

INSERT INTO MyTable VALUES (20080115)
GO

SELECT Data FROM MyTable
GO

DROP TABLE MyTable
GO

Vorrei che la SELECT restituisce un campo DATA (DATETIME)

Grazie mille a tutti


alx_81 Profilo | Guru

>Ho la necessita di di convertire un campo decimal (nel formato
>yyyymmdd) in formato data, quale e' la soluzione migliore?
Ciao..
Quel decimal sarebbe un simil formato ISO SSAAMMGG??

Passa da varchar, seguendo le specifiche ISO:
http://www.mcs.vuw.ac.nz/technical/software/SGML/doc/iso8601/ISO8601.html

>Grazie mille a tutti
di nulla!
--

Alessandro Alpi | SQL Server MVP

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org

lbenaglia Profilo | Guru

>Passa da varchar, seguendo le specifiche ISO:

Mmmm... perché?
Se possibile io modificherei la struttura della tabella, in modo da utilizzare i data type corretti per ogni tipo di informazioni.

USE tempdb; CREATE TABLE MyTable (Data decimal(8)); INSERT INTO MyTable VALUES (20080115); GO ALTER TABLE dbo.MyTable ADD NewData datetime; GO UPDATE dbo.MyTable SET NewData = CAST(Data AS varchar(8)); GO ALTER TABLE dbo.MyTable DROP COLUMN Data; GO EXEC sp_rename 'dbo.MyTable.NewData', 'Data', 'COLUMN'; GO SELECT * FROM dbo.MyTable; /* Output: Data ----------------------- 2008-01-15 00:00:00.000 (1 row(s) affected) */ DROP TABLE dbo.MyTable;

Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5