Maik: IF Bedingung SELECT

Guten Morgen,

ich hoffe ihr könnt mir bei folgender Problematik helfen.

Also ich habe eine Tabelle: --> t_tbl.

t_tbl
-------
Verfahren (CHAR)
Status (char)

Nun möchte ich, eine SQl Abfrage generieren, welche mir, wenn Status = "geschlossen" ist, dessen Anzahl (count) ausgibt.
Das selbe für "offen" und "Bearbeitung"

SELECT
Verfahren
COUNT(IF(Status='Geschlossen',1,0)) as geschlossen,
COUNT(IF(Status='offen',1,0)) as offen,
COUNT(IF(Status='bearbeitung',1,0)) as bearbeitung

FROM t_tbl
Group by Verfahren

Doch Irgendiwe geht dies nicht, denn er gibt immer den selben wert, bei offen, geschlossen und bearbeitung an ; (

Hoffe ihr könnt mir helfen.

  1. yo,

    kann es sein, dass du und peter die gleiche person sind ?

    Doch Irgendiwe geht dies nicht, denn er gibt immer den selben wert, bei offen, geschlossen und bearbeitung an ; (

    entweder machst du es mit NULL anstelle von 0 oder du benutzt SUM anstelle von COUNT.

    Ilja

    1. Fast, ich bin der Bruder von Paul.

      Mit der NULL ht es geklappt.
      Ich hätte noch eine Frage, as bedeutet: 1,NULL bei der Abfrage ?

      Danke für deine Geduld ; )

      1. yo,

        Ich hätte noch eine Frage, as bedeutet: 1,NULL bei der Abfrage ?

        das ist nur im zusammenhang mit der IF funktion zu beantworten.

        IF(ausdruck, wenn_wahr, wenn_falsch)

        wenn der ausdruck wahr wird also die bedingung zutrifft, dann nehme eine 1, ansonsten NULL, wobei NULL wetrte bei der COUNT Aggregat-Funktion nicht mitgezählt werden.

        Ilja

        1. Kann ich eine Bedingte INSERT into Abfrage generieren ?

          Beispiel:

          INSERT INTO tabelle (Spalte)
          Values(
          IF(Spalte2='test','D.IOV',NULL),
          .....,
          ....
          )

          Ist dies in  irgendeinerr Art möglich ?

          1. yo,

            Ist dies in  irgendeinerr Art möglich ?

            wenn du den INSERT aus einer Abfrage heraus befüllst, dann ght das ja.

            Ilja