Archiv verlassen und diese Seite im Standarddesign anzeigen : Zeitrechnung macht Probleme
Rüdiger König
02.08.2007, 13:32:36
Guten Tag zusammen
also mein Porblem ist das ich aus einer Tabelle in der Secundenwerte stehen, die für jeden Tag (auch 0) erstellt werden, nun möchte ich die summe bilden so das nur die secunden addiert werden die zwischen zwei Datumen liegen
SELECT SUM('.$typ.') FROM STILLSTAENDE WHERE DATE BETWEEN '.$anfangsdatum.' AND '.$enddatum.'
ich bekomme 0 alls augabe obwohl mehrere Stunden in der Tabelle stehen
bitte hälft mir
MfG
Rüdiger
Raketenmann
02.08.2007, 14:05:06
Was für Werte übergibst du in deinen Variablen und von welchem Datentyp sind die Spalten? Vielleicht passt es nicht zu einem BETWEEN ... AND Vergleich. Oder es läßt sich keine Summe aus $typ bilden.
Rüdiger König
02.08.2007, 14:31:42
das datumformat is DD.MM.YYYY
DATE = varchar
secund = text
hab nochmal was ausprobiert und das funzt auch soweit nur
wenn ich es in einer anderen abfrage verwände gibts wieder trouble
SELECT SUM('.typ.') FROM STILLSTAENDE WHERE DATE >= "'.$anfangsdatum.'" AND DATE <= "'.$enddatum.'"
diese abfrage mit genau den selben werten funktioniert nur an der einen stelle aber nicht an der anderen
ich hab die vermutung das mysql mit den Datumsschreibungen probleme hat
07.12.2006
12.05.2006
irgendwie scheint da der wurm drin zu sein
Raketenmann
02.08.2007, 14:44:02
das datumformat is DD.MM.YYYY
DATE = varchar
Wenn du das nicht ändern kannst, wirst du damit leben müssen, dass da ein Stringvergleich und kein Datumsvergleich stattfindet...
Ansonsten ändere den Typ der Datums-Spalten auf DATE und vergleiche mit einem YYYY-MM-DD Datum, dann klappts auch mit dem Zeitraum.
Rüdiger König
03.08.2007, 07:01:05
hat sich alles geklärt
der entwickler der datenbank hat mich auf das STAMP Feld verwiesen
mit dem gehts nun
aber danke für die bemühungen
mfg
Rüdiger
meikel (†)
03.08.2007, 07:32:39
aber danke für die bemühungen
Das siehst Du ein wenig falsch: der Raketenmann hat Dich auf einen Entwicklungs-/Projektfehler hingewiesen. Vielleicht solltest Du mal mit Deinem "db entwickler" ein paar Worte im Klartext wechseln.
Denn: wer Kalenderdaten als String und nicht als DATE/DATETIME in die Tabelle stopft, sollte mit dem Handbuch erschlagen werden.
Raketenmann
03.08.2007, 11:38:52
...., sollte mit dem Handbuch erschlagen werden.
Na dann beeil dich lieber...
secund = text
...nicht das dir jemand zuvor kommt und dem "Entwickler" für eine TEXT-Spalte für einen Sekundenwert noch viel schlimmeres antut. ;-)
vBulletin® v3.8.3, Copyright ©2000-2024, Jelsoft Enterprises Ltd.