Zwei Datumsabgaben in einem SQL-Statement voneinander abziehen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Zwei Datumsabgaben in einem SQL-Statement voneinander abziehen

    Hallo,

    ich will nur dann ein UPDATE durchführen, wenn die aktuelle uhrzeit größer ist, als eine DATETIME-Angabe in einer Tabelle zu welcher 15 Min. addiert werden sollen.

    PHP-Code:
                    $sql    'UPDATE
                                   user
                               SET
                                   sessid = NULL,
                                   autologin = NULL,
                               WHERE
                                   /*NOW() > (DATETIME + 15Min)*/
                               AND
                                   autologin IS NULL'

                    
    $result $this->db->query($sql); 
    Habe schon die MySQL-Doku durchstöbert und schon einiges ausprobiert, wie z.B. SUBDATE usw. Hat aber leider nicht geklappt.
    Zuletzt geändert von ; 17.02.2009, 01:36.

  • #2
    Hier mal was zum umbauen:
    PHP-Code:
    // liefert die Anzahl der User, 
    // welche in den letzten 10 Minuten aktiv waren
    $sql "  SELECT count(*) AS `anzahl` FROM `users`
                WHERE `last_hit` > DATE_SUB(NOW(), INTERVAL 10 MINUTE)"

    Sieh zu, dass der berechnete Teil Konstant ist, dann hat der eingebaute Optimizer bessere Chancen
    Zuletzt geändert von combie; 17.02.2009, 01:47.
    Wir werden alle sterben

    Kommentar


    • #3
      MySQL beherrscht übrigens auch ein einfaches:

      NOW() - INTERVAL 10 MINUTE
      carpe noctem

      [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
      [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

      Kommentar

      Lädt...
      X