Anzeige

Datumsberechnung und SQL

Datumsberechnung und SQL | PSD-Tutorials.de

Erstellt von TTron, 27.07.2008.

  1. TTron

    TTron Nicht mehr ganz neu hier

    Dabei seit:
    21.10.2005
    Beiträge:
    52
    Datumsberechnung und SQL
    Wenn man in einer SQL Tabelle ein Datum einfügen möchte, gibt es ja mehrere Möglichkeiten ... DATE, TIMESTAMP usw. ... welches wäre aber die sinnvollste Möglichkeit, wenn man später Abfragen nach einem Bereich erstellen möchte von z.B: zeige alle Zeilen, die ein Datum von Heute minus 5 Tagen beinhalten?

    Welche direkten Abfragemöglichkeiten in SQL habe ich da?

    Grüße
    TTron
     
    #1      
  2. Stefan

    Stefan Portal & Forum Teammitglied PSD Beta Team Kreativ-Flatrate-User

    2
    Dabei seit:
    28.02.2004
    Beiträge:
    8.688
    Geschlecht:
    männlich
    Ort:
    Waren (Müritz)
    Datumsberechnung und SQL
    AW: Datumsberechnung und SQL

    geht date oder auch timestamp, ich benutze eher für meine übersicht date ... kann aber sein das timestamp schneller ist, das weiß ich nicht so genau
     
    #2      
  3. TTron

    TTron Nicht mehr ganz neu hier

    Dabei seit:
    21.10.2005
    Beiträge:
    52
    Datumsberechnung und SQL
    AW: Datumsberechnung und SQL

    Hallo Stefan,

    danke für die Antwort.
    Geschwindigkeit spielt eher nicht so eine Rolle ... ob das nun 0,5,1 oder 3 sec dauert spielt keine Rolle. Die Frage ist allerdings, wie das bei der Generierung vom Datum/Zeit abläuft .. also von wo das geholt wird, denn GMT sollte es schon sein, oder ist das egal, wenn der SQL/PHP Server auf meinem lokalen Rechner läuft? ;)

    Wie müßte denn so eine Abfrage aussehen, könntest du mir mal ein Beispiel zeigen?
    Ich habe mal ein bißchen gesucht und bisher nur das hier gefunden:

    $result = mysql_query("SELECT * FROM TABELLE where timestampintabelle < DATE_SUB(now(), INTERVAL 7 DAY)");

    Was genau macht die Abfrage? Ich bin da noch total neu in SQL ... wenn ich das allerdings versuchen sollte zu erklären was da steht, dann würde ich das so interpretieren:

    Suche alle Einträge in TABELLE, wo in Spalte timestampintabelle ein Datum ist, das im Bereich von heute minus 7 Tage liegt ... also theoretisch das was ich benötige ... es sei denn ich habe das falsch interpretiert ;)


    Gruß
    Jens
     
    Zuletzt bearbeitet: 27.07.2008
    #3      
  4. Stefan

    Stefan Portal & Forum Teammitglied PSD Beta Team Kreativ-Flatrate-User

    2
    Dabei seit:
    28.02.2004
    Beiträge:
    8.688
    Geschlecht:
    männlich
    Ort:
    Waren (Müritz)
    Datumsberechnung und SQL
    AW: Datumsberechnung und SQL

    wenn du alles haben willst was gestern war dann so:
    WHERE TO_DAYS(DEINEZEITSPALTE) - TO_DAYS(NOW()) = -1
     
    #4      
  5. TTron

    TTron Nicht mehr ganz neu hier

    Dabei seit:
    21.10.2005
    Beiträge:
    52
    Datumsberechnung und SQL
    AW: Datumsberechnung und SQL

    Supi .. danke .. das sieht ja noch einfacher aus ... aber ich möchte ja nicht nur das von gestern oder nur von vorgestern, sondern alles aus den letzten 7 Tagen, oder geht das mit deiner Funktion dann auch? Ich habe das jetzt allerdings so verstanden, das NUR von gestern oder NUR von vor 3 Tagen angezeigt wird.

    Bei meinem Beispiel da oben müßte das aber auch funktionieren, oder habe ich da einen Denkfehler?


    Ansonsten hätte ich noch das hier zu bieten:

    SELECT * FROM `testtable` where datum >= date_sub(NOW(), INTERVAL 14 DAY) order by datum asc


    sieht für mich genau so aus ... nur ist das < jetzt ein >, bzw. ein >= ... nur wird da scheinbar das normale Datumsformat genommen .. hängt das damit zusammen?


    Jens
     
    Zuletzt bearbeitet: 28.07.2008
    #5      
x
×
×
teststefan