Forums Neueste Beiträge
 

verschiedene Resultate bei DateAdd

29/09/2010 - 16:20 von Helmut Blass | Report spam
Hallo NG,
habe folgendes Problem: ich habe einen Timestamp im Unix-
Sekundenformat und möchte selbigen umwandeln in Datum und Uhrzeit.
Das klappt mit DateAdd auch ganz gut:
select dateadd(s,1234567654,'1970-01-01')


2009-02-13 23:27:34.000





Wenn ich jedoch DateAdd in eine UDF packe..

CREATE FUNCTION seconds2DateTime (@seconds integer)
RETURNS char(23)
AS
DECLARE @ret char(23)
SET @ret = dateadd(s,@seconds,'19700101')

return (@ret)
END

und selbige dann aufrufe mit
SELECT dbo.seconds2DateTime(1234567654) AS date
dann kommt seltsamerweise folgendes Format heraus:
Feb 13 2009 11:27PM

Warum ist das so und wie bekomme ich das erstgenannte Format von der
UDF?

thanx for your help, Helmut
 

Lesen sie die antworten

#1 Thomas Arthur Seidel
30/09/2010 - 00:27 | Warnen spam
Betriebsystem? SQL Version?

On 29/09/2010 16:20, Helmut Blass wrote:
Hallo NG,
habe folgendes Problem: ich habe einen Timestamp im Unix-
Sekundenformat und möchte selbigen umwandeln in Datum und Uhrzeit.
Das klappt mit DateAdd auch ganz gut:
select dateadd(s,1234567654,'1970-01-01')
2009-02-13 23:27:34.000





Wenn ich jedoch DateAdd in eine UDF packe..

CREATE FUNCTION seconds2DateTime (@seconds integer)
RETURNS char(23)
AS
DECLARE @ret char(23)
SET @ret = dateadd(s,@seconds,'19700101')

return (@ret)
END

und selbige dann aufrufe mit
SELECT dbo.seconds2DateTime(1234567654) AS date
dann kommt seltsamerweise folgendes Format heraus:
Feb 13 2009 11:27PM

Warum ist das so und wie bekomme ich das erstgenannte Format von der
UDF?

thanx for your help, Helmut

Ähnliche fragen