Announcement

Collapse
No announcement yet.

Verwendung von Max in WHERE Klausel

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Verwendung von Max in WHERE Klausel

    Hi Folks,

    ich hab folgendes Problem. Mein Statement sieht zur Zeit wie folgt aus:
    SELECT
    DISTINCT(a), MAX(b)
    FROM
    a_test
    WHERE
    GROUP BY
    a

    die Tabelle dazu sieht so aus:
    a b
    1 1
    1 2
    1 3
    1 5
    2 2
    2 5
    3 1
    3 4
    4 1
    4 2
    4 5

    Und das Ergebnis ist natürlich:
    a MAX(b)
    1 5
    2 5
    3 4
    4 5

    So weit, so gut.. jetzt würde ich aber gerne noch ein
    WHERE
    b < 4
    oder genauer ein
    WHERE
    MAX(b) < 4
    einbauen.. das funktioniert leider nicht.. ersteres liefert mir natürlich nicht nur das Tuep 3, 4 sondern auch noch 1, 3; 3, 4; 4, 2. Zweiteres bricht mit einem SQL-Fehler (#1111 - Invalid use of group function) ab..
    Irgendjemand eine Idee, wie ich entsprechend Selectieren könnte ???

  • #2
    nimm mal statt

    where Max(b) < 4

    having Max(b) < 4.

    Siehe auch in der MySQL-Hilfe zu Having nach.

    Comment


    • #3
      Aaahh danke.. wieder was dazu gelernt.. jetzt funzt es..

      Und fürs Archiv, für alle Neu-SQLer.. das HAVING muss ans Ende
      Statement:
      SELECT
      DISTINCT(a), MAX(b)
      FROM
      a_test
      GROUP BY
      a
      HAVING
      MAX(b) < 5

      liefert auch wie gewollt nur

      a MAX(b)
      3 4

      Comment


      • #4
        Hallo,
        Originally posted by Amlor View Post
        Aaahh danke.. wieder was dazu gelernt.. jetzt funzt es..

        Und fürs Archiv, für alle Neu-SQLer.. das HAVING muss ans Ende...
        Und damit du nochwas lernst und es ins Archiv tun kannst :

        Eine gruppierte Abfrage führt automatisch auch eine Zusammenfassung aller nichtaggregierten Felder durch, somit ist ein DISTINCT in einer solchen Abfrage absolut überflüssig!

        Gruß Falk
        Wenn du denkst du hast alle Bugs gefunden, dann ist das ein Bug in deiner Denksoftware.

        Quellcode ohne ein Mindestmaß an Formatierung sehe ich mir nicht an! Ich leiste keinen Privatsupport per Mail oder PN!

        Comment

        Working...
        X