[MySQL 4.1] Datumsformatierung in Query

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

  • [MySQL 4.1] Datumsformatierung in Query

    Hallo,

    ich habe in einer Tabelle zwei Spalten vom Typ DATE (date1 und date2). Gibt es die Möglichkeit, eine Query zu schreiben die:
    1) wenn date1 == date2 tt1.mm.yyyy zurückgibt
    2) wenn date1 != date2 tt1.-tt2.mm.yyyy zurückgibt?

    Ansonsten mache ich es mit PHP, aber vielleicht geht es ja auch direkt in der Query?!

    Danke und Gruss,
    Pooky

  • #2
    Geht ... na klar ... schau dir mal die Funktionen IF(), DATE_FORMAT() und CONCAT() an ...
    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


    • #3
      Danke schonmal ... da ist jetzt das bei rausgekommen:

      PHP-Code:
      SELECT IF(date1<>date2DATE_FORMAT(date1, %e.%c.%Y), CONCAT(DATE_FORMAT(date1, %e.-), DATE_FORMAT(date2, %e.%c.%Y))) as datum FROM tabelle 
      ... gibt aber leider ein
      Parse error: parse error, unexpected T_VARIABLE ...
      Noch ein Tipp?

      Kommentar


      • #4
        der formatstring gehört in '
        Ich denke, also bin ich. - Einige sind trotzdem...

        Kommentar


        • #5
          Danke, habe ich übersehen. Ändert allerdings leider nichts am Fehler.

          Gruss,
          Pooky

          Kommentar


          • #6
            poste mal die zeile mit dem parse error und 5 zeilen oben- und untendrunter
            Ich denke, also bin ich. - Einige sind trotzdem...

            Kommentar


            • #7
              PHP-Code:
              require("protected/mysql_connect.inc.php");
               
              $query  "SELECT galID, titel, vorschauID, fotograf, "
               
              $query .= "IF(date1<>date2, DATE_FORMAT(date1, '%e.%c.%Y'), CONCAT(DATE_FORMAT(date1, '%e.-'), DATE_FORMAT(date2, '%e.%c.%Y'))) as datum FROM galerie ";
               
              $query .= "ORDER BY date1 DESC, date2"
              Der Error ist in der Zeile mit dem IF(). Danach kommt dann einfach die Datenbankabfrage, hat vorher auch alles geklappt (bevor ich die Query verändert habe).

              Kommentar


              • #8
                hast du eventuell ein semikolon in der zeile obendrüber vergessen?
                Ich denke, also bin ich. - Einige sind trotzdem...

                Kommentar


                • #9
                  Argh ... auf sowas achtet man doch zuerst. Danke und entschuldigt meine Unaufmerksamkeit

                  Kommentar

                  Lädt...
                  X