in WHERE auf alterName as neuerName zugreifen

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

  • in WHERE auf alterName as neuerName zugreifen

    Moin,
    geht es eigentlich in der WHERE auf Werte zuzugreifen, die ich in SELECT mit alter_name as neuer_name umbenannt habe?
    Versuche gerade so was und kriege die Fehlermeldung:
    #1054 - Unknown column 'neuWert1' in 'where clause'

    so ala:
    SELECT
    wert1 as neuWert1, wert2 as neuWert2
    FROM xyz
    WHERE
    neuWert1 < neuWert2

    oder kennt einer nen Trick?
    "I don't want to belong to any club that would accept me as a member."

    Groucho Marx

  • #2
    Trick 1: WHERE wert1 < wert2

    Trick 2: HAVING statt WHERE
    Ich denke, also bin ich. - Einige sind trotzdem...

    Kommentar


    • #3
      Trick 1: WHERE wert1 < wert2
      geht nicht, da der mit as Erzeugte Bezeichner noch umformatiert werden muß (deswegen brauche ich ja den neuen Namen)

      Trick2 probiere ich mal aus...
      "I don't want to belong to any club that would accept me as a member."

      Groucho Marx

      Kommentar


      • #4
        Zeig mir ein Beispiel, wo Trick 1 nicht funktioniert...
        Ich denke, also bin ich. - Einige sind trotzdem...

        Kommentar


        • #5
          , mit HAVING klappts
          Zeig mir ein Beispiel, wo Trick 1 nicht funktioniert...
          mein Problem ist (war dank deiner Hilfe),
          das ich in einer alten Datenbank von mir das Datum in dem format:
          yyyy mm dd
          gespeichert hatte (ich weiß ist falsch, war ein Anfänger Fehler)

          Also mußte ich das Datum neu Formatieren:
          DATE_FORMAT(replace(max(datum),' ',''), '%Y%m') as neuDatum,
          (DATE_FORMAT(NOW(), '%Y%m') - 1) AS today,

          muß also vergleichen:
          neuDatum < today

          (Soll mir alle Werte anzeigen, die einen Monat und älter sind.

          Klar,
          WHERE wert1 < wert2
          geht immer....
          Nochmal THX mrhappiness
          Zuletzt geändert von mcmurphy; 24.05.2006, 17:52.
          "I don't want to belong to any club that would accept me as a member."

          Groucho Marx

          Kommentar


          • #6
            DATE_FORMAT(replace(max(datum),' ',''), '%Y%m') waäre dann dein "wert! und das kannst du natürlich auch im WHERE verwenden
            Ich denke, also bin ich. - Einige sind trotzdem...

            Kommentar


            • #7
              mrhappiness, wieder was gelernt

              Aber mit having siehts besser aus, weil der Feldname
              (DATE_FORMAT(NOW(), '%Y%m') - 1)
              komplizierter ist als zb.
              vergleichsWert

              Aber trotzdem XXXX - THX
              "I don't want to belong to any club that would accept me as a member."

              Groucho Marx

              Kommentar

              Lädt...
              X