Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!

Mobiles Hauptmenü

SQL Syntax

Begonnen von imp666, April 15, 2011, 10:59:36

⏪ vorheriges - nächstes ⏩

imp666

mySQL Backend: Tabelle mit timestamp Feld

Benötige eine funktionierende SQL Query-Syntax für alle Datensätze die in den letzten 24 Stunden geändert wurden.

Habe es mit DatAdd("t";-1;Jetzt()) probiert, aber meine Vermutung ist, dass die Uhrzeit nicht mitberechnet wird.

Der timestamp Wert ist ja eigentlich nur ein Long-Wert, man müsste den doch eigentlich typecasten können und mit dem aktuellen "CLng(Timestamp)-60*60*24" vergleichen können? Und wenn ja, wie bekomme ich denn den aktuellen Timestamp als Long in Access VBA?

MzKlMu

#1
Hallo,
ZitatDer timestamp Wert ist ja eigentlich nur ein Long-Wert,
Nein, das ist der Datentyp Double. Vor dem Komma (die Ganzzahl) die Anzahl der Tage die seit dem 30.12.1899 vergangen sind. Nach dem Komma ist der dezimale Anteil eines Tages. 1h = 1/24.
Heute 15.4.2011 12:00 = 40648,5 als Double Zahl. Gestern die gleiche Zeit = 40647,5

Das heist, mit Tagen kannst Du ganz einfach rechnen.
>Jetzt()-1Als Kriterium.
In SQL:
SELECT Timstamp
FROM DeineTabelle
WHERE Timstamp>Now()-1
Gruß Klaus

imp666

Danke, ich wusste doch, dass es irgendwie relativ einfach geht. Aber das ist ja absolut simpel, gefällt mir.

Also als Fazit: mySQL arbeitet mit Integer-Werten für einen Timestamp und Access mit Double Werten. ODBC konvertiert die Werte dann vermutlich passend.