Veröffentlicht 14. November 201113 j Hallo, kann mir jemand sagen wie man datensätze nur von HEUTE ausgibt? Hab ne tabelle mit daten, die sich täglich ändern können. nach der änderung bekommt der datensatz timestamp in der spalte datum: z.B. "2011-11-14 15:17:25" mfg. dela
14. November 201113 j Je nach Server gibt es integrierte Datumsfunktionen. Beispielsweise für den MSSql Server: Date and Time Functions (Transact-SQL). Dort findest du auch eine Funktion, die du bei der Lösung deines Problems verwenden kannst. Die Funktionen sind DBMS abhängig. Generell: Du willst die Ergebnismenge auf die Datensätze einschränken, die in einem bestimmten Zeitraum liegen. => WHERE-Klausel in der SELECT-Anweisung für die Datumsspalte dementsprechend formulieren. Wenn du hierbei noch Schwierigkeiten hast, besorge dir eine Test-Datenbank, oder baue dir eine, womit du üben/testen kannst.
14. November 201113 j das habe ich bereits : $ergebnis = mysql_query("SELECT Änderung FROM konstellation WHERE Datum = now() "); Datum ist die Spalte in der tabelle. Das klappt i-wie nicht
14. November 201113 j Anhand deines Code-Schnipsels gehe ich von MySql aus. Die Dokumentation besagt das Now() einen Zeitstempel zurück gibt. D.h. Die Zeitkomponente ist mit dabei. Das ein Datensatz auf die Millisekunde genau in der Tabelle vorhanden ist, ist eher unwahrscheinlich. Probiere das einfach mal direkt auf der DB-Konsole aus: SELECT Now(); CURDATE() sollte das gewünschte Ergebnis liefern. Generell: MySQL ist für die meisten Aufgaben gut dokumentiert. Teste deine Abfragen nach Möglichkeit auf einer DB. In diesem Fall hätte dich ein SELECT NOW(); auf die richtige Fährte bringen können.
14. November 201113 j und wen man die letzten 7 tage haben will geht das so: WHERE Datum >= CURRENT_DATE() - 7 oder - 30 für nen monat
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.