Hvordan konvertere DateTime til VarChar

Jeg jobber med en spørring i Sql Server 2005 der jeg trenger å konvertere en verdi i DateTime-variabelen til en varchar-variabel i yyyy-mm-dd-format (uten tidsdel). Hvordan gjør jeg det?

Prøv følgende:

CONVERT(varchar(10), [MyDateTimecolumn], 20)

For en full dato tid og ikke bare dato gjør:

CONVERT(varchar(23), [MyDateTimecolumn], 121)

Se denne siden for å konvertere stiler:

http://msdn.microsoft.com/en-us/library/ms187928.aspx OR SQL Server CONVERT()-funksjonen2

Kommentarer (0)

Enten Kast eller Konverter:

Syntaks for CAST:

CAST ( expression AS data_type [ (length ) ])

Syntaks for CONVERT:

CONVERT ( data_type [ ( length ) ] , expression [ , style ] )

http://msdn.microsoft.com/en-us/library/ms187928.aspx

Faktisk siden du ba om et bestemt format:

REPLACE(CONVERT(varchar(10), Date, 102), '.', '-')
Kommentarer (0)

Du sa ikke hvilken database, men med mysql her er en enkel måte å få en dato fra et tidsstempel (og varchar type konvertering bør skje automatisk):

mysql> select date(now());
+-------------+
| date(now()) |
+-------------+
| 2008-09-16  | 
+-------------+
1 row in set (0.00 sec)
Kommentarer (1)