date,mktime,strtotime

Sebbo90

Mitglied
Hi,

mich plagt die ewige Datumsrechnerei. Ich möchte Datensätze aus einer Datenbank auslesen, die in einen gewissen Zeitraum fallen:

Heut, Gestern, diese Woche, letzte Woche, dieser Monat, letzter Monat, dieses jahr, letztes jahr.


Was mir Probleme macht ist das errechnen von: diesen Monat (start,ende), letzter Monat(start,ende) dieses Jahr (start,ende), letztes Jahr (start,ende)

Ich hoffe ihr könnt mir helfen. Vll gibt es da auch eine allgemeingültige function?

mfg
sebbo
 
Wenn es eine MySQL-Datenbank ist, hilft ein Blick in das Handbuch:
http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html

Dort gibt es zahlreiche Beispiele für einfache Datumsabfragen. Diese musst Du nur noch kombinieren um zum Ziel zu kommen.

Beispiel:
Alle Einträge von letztem Jahr.
Code:
WHERE dbdatum BETWEEN CONCAT(DATE_SUB(NOW(), INTERVAL 1 year),'-01-01') AND CONCAT(DATE_SUB(NOW(), INTERVAL 1 year),'-12-31')

Für viele Aufgaben gibt es auch viele Schreibweisen und Möglichkeiten. Eine "allgemeingültige Funktion" wie Du sie suchst, gibt es für deine Anforderungen (zum Glück) nicht.
 
danke, das war mir gar nicht bekannt das es auch über die einfache abfrage funktioniert. Ich hab es immer als timestamp umgerechnet und dann entsprechend abgefragt. Nur habe ich jetzt schon alles so ausgerichtet.

Deswegen denke ich das es bestimmt auch möglich ist einfach den entsprechenden timestamp für die sachen die mir fehlen auszurechnen?

mfg
 
Nein. Du willst ja Zeitbereiche ermitteln. Ein Timestamp spiegelt einen genauen Zeitpunkt wieder, keinen Bereich.

Aber ja, Du kannst auch Timestamps die als Vergleich dienen sollen aus den oben verlinkten Funktionen berechnen lassen.
 
Zurück