Phil Z.: Eintrag mit dem letzten Datum auswählen

Hallo.

Ich will in einer Tabelle einige Datensätze wo Daten(mehrzahl Datum) drinstehen haben.
1. Frage: Was nehm ich? date()?
Ich will aus der Tabelle dann das letzte Datum auswählen und anzeigen, wie mach ich das?

Versuch:
"SELECT name FROM tabelle WHERE datum=AKTUELLSTES

Beispiel
es gibt die Daten:
07.06.1990
16.01.2007
14.12.2006
15.01.2007

Er soll nun das aktuellste Datum auswählen also 16.01.2007.

Ich weiß einfach nicht wie ich das realisieren soll.

Hoffe ihr könnt mir helfen!

mfg

Phil Z.

  1. "SELECT name FROM tabelle WHERE datum=AKTUELLSTES

      
    SELECT  
     name  
    FROM  
     tabelle  
    ORDER BY  
     datum DESC  
    LIMIT  
     0,  
     1  
    
    

    Geht das?

    1. Geht das?

      hab noch keien daten eingetragen da ich nicht weiß in welchem "Format" ich die Daten eintragen soll. date()?

      mfg

      Phil Z.

      1. hab noch keien daten eingetragen da ich nicht weiß in welchem "Format" ich die Daten eintragen soll. date()?

        ähm... Also ich weiss ja nicht wirklich ob Du mit "Format" den Datentyp in Deiner Datenbank meinst unter welchem die Daten eingetragen werden sollen, aber falls ja hast nicht viel möglichkeiten.
        Wenn nur das Datum willst, dann wählst den Typ "DATE".
        Wenn das Datum inklusive der Zeit willst, dann wählst den Typ "DATETIME".

        Und die Ausgabe sortierst einfach mit DESC (= abwärts sortiert... ergo aktuellstes Datum zuoberst). Die Abfrage sieht etwa so aus

        SELECT
            Datum,
            xyz
        FROM
            WieAuchImmerDeineTabelleHeisst
        ORDER BY
            Datum DESC;

        greetz

        1. ähm... Also ich weiss ja nicht wirklich ob Du mit "Format" den Datentyp in Deiner Datenbank meinst unter welchem die Daten eingetragen werden sollen, aber falls ja hast nicht viel möglichkeiten.

          Nein ich meinte folgendes:
          Mein Skript muss die Daten ja auch eintragen mit INSERT
          wie soll ich das Datum am besten bestimme?
          mktime()?, date()?
           oder wie»»

          SELECT
              Datum,
              xyz
          FROM
              WieAuchImmerDeineTabelleHeisst
          ORDER BY
              Datum DESC;

          Danke!

          mfg

          Phil Z.

          1. Mein Skript muss die Daten ja auch eintragen mit INSERT
            wie soll ich das Datum am besten bestimme?

            M.E. solltest du das der Datenbank überlassen. Ansonsten suche dir einen Datumstypen aus, der deinen Vorstellungen entspricht und füge die Daten den für diesen Typ geltenden Konventionen entsprechend ein.

            Siechfred

            --
            Ich bin strenggenommen auch nur interessierter Laie. (molily)
  2. yo,

    falls dein dbms unterabfragen kann, bei mysql ab 4.1, kannst du es so machen:

    SELECT t1.spalte1, t1.spalte2.....
    FROM tabellen_name t1
    WHERE t1.datum = (SELECT MAX(datum) FROM tabelle_name t2)

    wenn nicht mach einfach zwei abfragen draus.

    Ilja