Timestamp in DB-Abfrage integrieren

wal

Erfahrenes Mitglied
Hallo,

ich habe folgendes Problem, ich habe eine Datenbank geerbt. In dieser steht leider nicht der Timestamp drinnen, sondern ein Datum. Nun würde ich gerne, um die Ausgabe sortieren zu können, in dem Select-Statement das Datum umformatieren, damit ein Timestamp daraus wird. Anschliessend werde ich bei der Ausgabe dann wieder das Datum entsprechend formatieren.

Ist es möglich im Select das Datum als Timestamp umzuformatieren?
Wenn ja, wäre ich sehr über die Syntax erfreut, ich habe es per PHP zwar mittels mktime probiert, aber es klappt nicht so wie ich möchte. Die Syntax ist nicht korrekt.

Vielen Dank schon mal vorab für eure Hilfen und Tipps.

Viele Grüße
Wolfgang
 
Hi,

ich habe es in der Select-Abfrage mit UNIX_TIMESTAMP() und UNIXTIME() probiert ... hmmm leider ohne Erfolg. Das Datum im Format YYYY-MM-DD... wird nicht in ein Timestamp umgewandelt. :mad:

Soweit ich rausgelesen habe aus den Handbüchern muss ich doch nur UNIX_TIMESTAMP(Spaltenname) angeben.

Stimmt da noch etwas mit der Syntax nicht?

Viele Grüße
Wolfgang
 
Hi,

die Datumsspalte hat folgendes Format:
yyyy-mm-dd hh:mm:ss

Funktioniert dies nicht oder gibt es dazu eine besondere Syntax die ich dem Timestamp dann hinzufügen muss?

Viele Grüße
Wolfgang
 
hallo,

von welchem DBMS reden wir eigentlich oracle, informix, mySQL, ...

generell sollte folgendes statement bei allen datenbanken funktionieren:

tabelle_xy hat eine spalte row_added_dttm vom typ date

Code:
select to_char(a.row_added_dttm, 'YYYY.MM.DD HH24:MI:SS')
from tabelle_xy a
order by to_char(a.row_added_dttm, 'YYYY.MM.DD HH24:MI:SS');
.

der format-string
YYYY = jahr 4-stellig
MM = monat 2-stellig
DD = tag 2-stellig
HH24 = stunde im 24-stunden modus
MI = minuten
SS = sekunden

falls es genauer sein soll, muß man in timestamp konvertieren. das funktioniert bei
jedem DBMS anders.

gruß

euphrasine
 
Zurück