timestamps vergleichen

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

  • timestamps vergleichen

    Hey,
    habe lange in diesem Forum gesucht, leider nix passendes gefunden! Andere Beiträge haben mir allerdings sehr geholfen! Merci!!
    Meine MySQL Tabelle hat id (autoincrement); art_nr(varchar)...datum(timestamp).
    Problem: Updates müssen als neues Insert erfolgen; d.h. art_nr bleibt identisch. id ändert sich und timestamp. Jetzt sollten alle Datensätze im SELECT angezeigt werden, aber von den upgedateten nur der neueste. Gibst dafür nen kurzen SQL SELECT (wäre mir lieber) oder besser in php stricken?
    __________________________ geändert--------------------
    OK sieht zwar einfach aus is aber ziemlich fiese Abfrage fuer'n Anfänger oder?
    Mit Datumsbereichen abfragen (wie in anderen Threads) klappts nicht, weil ja mehrere Updates zu unterschiedlichsten Zeitpunkten erfolgen können. So kann nicht über time >".time():" etc gefragt werden. Mit nem left JOIN über ne Referenztabelle hab ich denselben Mist. LIMIT über Datumsbereich zeigt nur neue Datensätz aber nicht die älteren mit altem timestamp die noch keine Änderungen haben.
    Zuletzt geändert von pfaeffi; 02.12.2002, 18:57.

  • #2
    Fällt mir gerade nichts ein für eine query.
    Aber du könntest ja einfach beim insert etwas basteln, das in einer zusätzlichen Spalte noch einen Eintrag macht 'alt' bzw. 'neu', lässt sich sicher einfach beim insert einbauen.
    Dann hast du für das SELECT ein einfach abzufragendes Kriterium.
    mfg

    Kommentar


    • #3
      Vielen Dank,
      werde denk ich mal, einzusätzliches ENUM SET einfügen so wie gesperrt 'j','n'?
      und dann die Datensätze welche nicht im SELECT auftauchen sollen sperren. Is aber ne mords Tipperei (2000 Datensätze! ca 300 sperren und finden). Na vielleicht hat ja jemand noch ne gute Idee.

      Kommentar


      • #4
        Geht doch:

        select art_nr, max(timestamp), max(id)
        from tabelle
        group by art_nr
        order by art_nr

        Voraussetzung ist dass id increment ist. Das mit dem max(timestamp) musst du überprüfen, geht m.E. wenn es ein UNIX-Zeitstempel ist.

        mfg

        Kommentar


        • #5
          Thanks a lot!
          das war`s. ; Klasse,Perfekt...

          Kommentar

          Lädt...
          X