Archiv verlassen und diese Seite im Standarddesign anzeigen : TIMESTAMP und Vergleich????
Ich hab ne Tabelle mit einem Feld im Format TIMESTAMP(14).
Nun muesste ich auf dieses Feld einen Vergleich machen - soweit kein Problem, aber der Vergleichswert sollte in der Query berechnet werden, also in etwa in der Art:
SELECT * FROM `usm_session` WHERE `sss_tstamp` > '20060316193229 - 5'
Nur funktioniert das nicht - der Haken liegt im '20060316193229 - 5'. Hat jemand ne Ahnung wie das funktioniert?
mfg
BLUESCREEN3D
16-03-2006, 18:50
der Haken liegt im '20060316193229 - 5'
Du musst jeden Wert einzeln Quoten und nicht die gesamte Rechnung:
'20060316193229'-'5'
Ich vermute mal, der erste Wert soll eine Zeitangabe sein - in dem Fall wird die Rechnung mglw. nicht in jedem Fall so laufen, wie geplant...
Turbohummel
17-03-2006, 05:54
Ich würde die Zeit als Integer im UNIX_TIMESTAMP speichern, damit kannst du viel schöner rechnen, da es ja ein Integer ist (funzt natürlich nicht bei Daten vor dem 1.1.1970).
Ansonsten sieh dir mal
http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html
an, besonders die Funktion "ADDTIME".
und die benutzung eines datetime-datentypen? dann bietet die db auch die notwendigen funktionen zu berechnung, und es ist auch ohne formatierung lesbar...
Waere auch ne Moeglichkeit - leider kommt die fuer mich nicht in Frage weil mein Arbeitgeber die Tabellen vorgibt.
Wenn ich den Datentyp aendern wuerde muesste ich auch die Restliche Software umschreiben, die mit meiner kooperieren soll!
Auf jedenfall funktioniert es jetzt super, vielen Dank an alle! :)
undefined
17-03-2006, 21:23
Dafür muss man nicht die Tabelle umschreiben um einen Timestamp zu erhalten ;)
SELECT * FROM `usm_session` WHERE ( UNIX_TIMESTAMP( `ssstime` ) > '20060316193229' )
Powered by vBulletin® Version 4.2.5 Copyright ©2025 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.