MySQL: Heutige Datensätze in TIMESTAMP Spalte suchen
Frage von Chematik | 25.12.2012 um 10:44
Ich möchte alle Datensätze auswählen, die am heutigen Datum erstellt wurden.
Das Problem: Die Spalte ist vom Typ TIMESTAMP und hat daher keinen eindeutigen Wert für "heute", schließlich ist die Zeit ja bei jeder Zeile immer unterschiedlich. Wäre das Feld vom Typ DATE wäre dies also einfach, aber ich möchte auch die Zeit speichern.
Wie kann ich trotzdem alle Zeilen einer TIMESTAMP Spalte auswählen, die das heutige Datum haben?
Ähnliche Themen
MySQL: Neue Spalte zu einer Tabelle hinzufügen
Tutorial | 0 Kommentare
MySQL: Daten aus Tabelle löschen - Unterschied zwischen TRUNCATE, DELETE und DROP
Tutorial | 0 Kommentare
MySQL: Aktuelles Datum oder Zeit in Spalte schreiben
Tutorial | 0 Kommentare
MySQL: Zeilenumbrüche in MySQL
Tipp | 0 Kommentare
MySQL: Wie viele Datensätze wurden gefunden oder sind von meiner Abfrage betroffen?
Info | 0 Kommentare
MySQL: Suchergebnisse auf mehreren Seiten darstellen
Tutorial | 0 Kommentare
MySQL: Timestamp Spalte nach Monat und Jahr gruppieren
Tipp | 0 Kommentare
Wichtiger Hinweis
Bitte beachten Sie: Die Beiträge auf askingbox.de sind Beiträge von Nutzern und sollen keine professionelle Beratung ersetzen. Sie werden nicht von Unabhängigen geprüft und spiegeln nicht zwingend die Meinung von askingbox.de wieder. Mehr erfahren.
Jetzt mitmachen
Stellen Sie Ihre eigene Frage oder schreiben Sie Ihren eigenen Artikel auf askingbox.de. So gehts.
Du kannst folgende Anweisung benutzen, wobei "spalte" deine TIMESTAMP- Spalte ist:
Damit wandelst du jedes TIMESTAMP formatierte Datum in ein DATE um und vergleichst dies mit CURDATE(), dem aktuellen Datum. Und findest so die richtigen Datensätze.
25.12.2012 um 22:03
Die Lösung von Axuter ist natürlich richtig und funktioniert auch, allerdings ist dafür ein kompletter Table-Scan erforderlich. Alle Datensätze müssen durchgegangen und berechnet werden (schlecht für die Performance).
Besser ist die folgende Variante:
Wenn ein Index auf der Spalte liegt, kann so viel effizienter gesucht werden, in dem einfach mit der oberen und der unteren Schranke bezüglich des heutigen Tages gerechnet wird (größer oder gleich des heutigen Datums und kleiner als das heutige Datum + 1 Tag).
08.01.2013 um 09:50