Announcement

Collapse
No announcement yet.

count() mit Bedingungen

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

  • count() mit Bedingungen

    Hallo Forum,

    als Ausgangspunkt habe ich folgende Daten/Struktur in der Tab 'countbeispiel':

    MODELL / testwert_a / testwert_b
    modell_a / 1 / 1
    modell_a / 1 / 1
    modell_a / 1 / 0
    modell_b / 1 / 1
    modell_b / 1 / 0

    Es soll nun herausgefunden werden, wieviele 1 aus testwert_b es gibt über MODELL. Funktioniert wunderbar über:

    select *, count(modell) as versuch1
    from `countbeispiel`
    where testwert_b = 1
    group by modell

    Ich würde aber ganz gern auf diese spezielle WHERE testwert_b = 1 verzichten und dies irgendwie anders lösen. Hatte erst an etwas wie:

    select *, if(testwert_b=1,count(modell),0) as versuch2
    from `countbeispiel`
    group by modell

    ... gedacht, aber die IF-Geschichte wird einfach ignoriert. Hat jemend einen Ansatz? Muss auch nicht unbedingt so ganz performant sein, da es einfach nur ein Einspieler ins Pentaho ist ... also keine Webanwendung bedient.

    Vielen Dank erst einmal ...

  • #2
    Entweder du nimmst die Funktion NULLIF() zu Hilfe
    [highlight=sql]SELECT modell, COUNT(NULLIF(testwert_b, 0))
    FROM counttest
    GROUP BY modell[/highlight]

    oder bei den Werten 0 und 1 hilft auch SUM() weiter
    [highlight=sql]SELECT modell, SUM(testwert_b)
    FROM counttest
    GROUP BY modell[/highlight]

    Übrigens verwende bitte die Formatierung für SQL
    Bei SQL-Code bitte beachten: Formatierung von SQL in Beiträgen

    Comment


    • #3
      merci!

      ... werde ich mal testen und die formatierung beim nächsten mal korrekt durchführen!

      Comment


      • #4
        Wenn es die Werte 0 und 1 sind, dann wird NULLIF nicht funktionieren.


        Und wie dibo33 schon schrieb, wird SUM() die einfachste Lösung sein.

        Comment


        • #5
          Originally posted by iACOi View Post
          Wenn es die Werte 0 und 1 sind, dann wird NULLIF nicht funktionieren.
          Wieso nicht?
          Bei SQL-Code bitte beachten: Formatierung von SQL in Beiträgen

          Comment

          Working...
          X