Philipp Hasenfratz: MySQL-Abfrage einschränken

Beitrag lesen

Halihallo RAINER

in der Spalte steht: 1009839600 - das wird dort eingefügt durch die time()-Funktion!

OK. Das hat dann aber nur noch wenig mit dem mysql-Datentyp TIMESTAMP zu tun. Du
solltest den Typ dann bei Gelegenheit in unsigned INT umwandeln.

Aber warum klappt das nicht wenn ich das auf Monate beschränken will ???

Naja, wie ich auch der von dir geposteten Lösung entnehme, setzt mysql den Integer nicht
1:1 um, sondern versucht ihn als strinified-date zu interpretieren, das Ergebnis ist,
dass der Typ nicht umgewandelt werden kann und in gegebener Form übernommen wird; das
funktioniert zwar, nur mit dem Nachteil, dass man Date/Time-Funktionen nicht mehr
verwenden kann (naja, verwenden kann man sie, nur spucken sie irrelevante Daten aus).

Zu deiner Lösung: FROM_UNIXTIMESTAMP liest nun einen Integer ein (und der ist ja
fälschlicherweise auch gespeichert) und konvertiert ihn in ein mysql-date-Typ. Dieser
kann dann natürlich wieder von MONTH richtig umgesetzt werden.

Viele Grüsse

Philipp