Announcement

Collapse
No announcement yet.

Alias als Filter in Where Klausel verwenden

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

  • Alias als Filter in Where Klausel verwenden

    Hallo,
    seit ein paar Tagen versuche ich eine Lösung zu folgendem Problem zu finden:
    Ich möchte mir gerne eine Tabelle ausgeben lassen, die einen ebene-Eintrag größer 1 hat. Ich weiß aber nicht mehr weiter ...
    Code:
    mysql> SELECT n.*,
        -> count(*)-1+(n.lft>1) AS ebene
        -> FROM kategorie n,  kategorie p
        -> WHERE n.lft BETWEEN p.lft AND p.rgt 
        -> AND (p.id != n.id OR n.lft = 1)
        -> GROUP BY n.id
        -> ORDER BY n.lft ;
    +----+---------------------+-----+-----+-------+
    | id | name                | lft | rgt | ebene |
    +----+---------------------+-----+-----+-------+
    |  1 | Kategorien          |   1 |  10 |     0 | 
    |  2 | Auto & Motorrad     |   2 |   3 |     1 | 
    |  3 | Beauty & Gesundheit |   4 |   7 |     1 | 
    |  5 | Wellness            |   5 |   6 |     2 | 
    |  4 | Computer            |   8 |   9 |     1 | 
    +----+---------------------+-----+-----+-------+
    Ich hoffe jemand hat einen Lösungsvorschlag für mich (bevor meine grauen Haare anfangen auszufallen), wäre sehr dankbar!

    Gruß, Jan

  • #2
    Mache die Bedingung in die HAVING-Klausel
    Bei SQL-Code bitte beachten: Formatierung von SQL in Beiträgen

    Comment

    Working...
    X