Hallo!
Ich habe ein komisches Problem. Mit einem PHP Skript möchte ich eine Liste von Daten holen, dessen Datum in einem bestimmten Zeitraum ist. Also habe ich folgende Zeile geschrieben:
$pDate ist irgendein ein Timestamp innerhalb des Monats, für den die Liste geholt werden soll. Die Spalte "datestamp" in der Datenbank ist vom Typ DATE.
Führe ich diese Query aus, bekomme ich kein Ergebnis. Auch ein Einsatz von BETWEEN anstatt der zwei Abfragen bringt kein Ergebnis :
Lasse ich hingegen die obere Schranke des Zeitraums weg (also habe nur die Abfrage '>= '.date('Y-m',$pDate).'-01', so werden Daten richtig ausgegeben, die eigentlich aber auch mit der oberen Schranke angezeigt werden müssten.
Wieso funktioniert also weder das < / <= noch das BETWEEN nicht bei Spalten vom Typ DATE, > / >= hingegen schon? Oder habe ich einen Fehler gemacht?
Ich habe ein komisches Problem. Mit einem PHP Skript möchte ich eine Liste von Daten holen, dessen Datum in einem bestimmten Zeitraum ist. Also habe ich folgende Zeile geschrieben:
Code:
$orders = mysql_query('SELECT `orderid` FROM orders WHERE `uid`='.$pUid.' AND datestamp >='.date('Y-m',$pDate).'-01 AND datestamp <='.date('Y-m-t', $pDate));
$pDate ist irgendein ein Timestamp innerhalb des Monats, für den die Liste geholt werden soll. Die Spalte "datestamp" in der Datenbank ist vom Typ DATE.
Führe ich diese Query aus, bekomme ich kein Ergebnis. Auch ein Einsatz von BETWEEN anstatt der zwei Abfragen bringt kein Ergebnis :
Code:
$orders = mysql_query('SELECT `orderid` FROM orders WHERE `uid`='.$pUid.' AND datestamp BETWEEN '.date('Y-m',$pDate).'-01 AND '.date('Y-m-t', $pDate));
Lasse ich hingegen die obere Schranke des Zeitraums weg (also habe nur die Abfrage '>= '.date('Y-m',$pDate).'-01', so werden Daten richtig ausgegeben, die eigentlich aber auch mit der oberen Schranke angezeigt werden müssten.
Wieso funktioniert also weder das < / <= noch das BETWEEN nicht bei Spalten vom Typ DATE, > / >= hingegen schon? Oder habe ich einen Fehler gemacht?