Fieldtype temporär (nur für die Abfrage) ändern?

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

  • Fieldtype temporär (nur für die Abfrage) ändern?

    Hi,

    habe hier n Script von nem Freund und ich helf dem grade mit ner Abfrage.

    Hab also ne Tabelle, in der das Datum als Mysql-Timestamp (20041204) gespeichert ist. Der feldtyp ist VARCHAR.

    jetzt möchte ich gerne in der abfrage date_sub usw. anwenden, was sich aber so nicht anwenden lässt. Brauche also ein Feld vom Typ DATE

    Kann ich irgendwie das VARCHAR feld (nur in einer einzelnen Abfrage) wie ein DATE-Feld behandeln? So dass ich dann mein date_sub anwenden kann.

  • #2
    du kannst CAST oder CONVERT in Argument von DATE_SUB verwenden

    Kommentar


    • #3
      hmm,

      kling ganz schön.

      hab aber eben mist geschrieben. will gar nicht das date_sub mit dem datum verwenden, sondern vergleichen:

      Code:
      SELECT id,
        MAX(i.date) maxdate
      
      [...]
      
      HAVING maxdate < DATE_SUB(NOW(),INTERVAL 1 MONTH)
      habe jetzt also zwei möglichkeiten:
      1) das "DATE_SUB(NOW(),INTERVAL 1 MONTH)" in mysql-Timestamp umwandeln
      2) maxdate in DATE umwandeln.

      Ist müsste allerdings mit CAST gehen. Wobei mich der ganze Charset-Kram n bisschen irritiert.

      Kommentar


      • #4
        select cast(max(i.date) as date) maxdate ... having ...

        Kommentar


        • #5
          Wow. das funktioniert echt wunderprächtig mit cast. Wollte nur ungern mit REPLACE rummatschen.

          Danke dir!

          Kommentar


          • #6
            bitte

            Kommentar

            Lädt...
            X