[Oracle] Null bei Count nicht mitzählen ?

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

  • [Oracle] Null bei Count nicht mitzählen ?

    Hallo zusammen,
    ich habe in einer Abfrage diese hier gemacht...

    count(distinct(decode(c.status,'OK',c.Nr,0)))

    Es geht darum, das ich eine Tabelle mit paletten habe, die auch wegen mehren Position 2 mal vorkommen können, daher distinct, ich brauche die Anzahl der Pal. mit einem Status. Soweit ist das ja auch super finde ich. Aber wenn nun ein Status nicht da ist, kommt trotzdem einmal 0 vor, in dem Ergebniss steht also 1 anstatt 0? wenn ich nun alles -1 nehme, verfälscht das andere ergebnisse. Wie kann ich ihm sagen das er diese 0 nicht mit "counten" soll ?

    Kennt jemand eine Möglichkeit ?

    MFG

    Cyberbob

  • #2
    hab die situation nicht ganz verstanden.

    evtl. mit SUM() und IF()?

    Kommentar


    • #3
      sum würde nicht gehen, da ich ja die Nr wiedergebe und nicht 1. Bei der geht es aber nicht wegen Distinct

      If hört sich gut an! Weis aber nicht wie das in SQL geht, das ich sage ...

      Wenn <>0 dann Distinct...

      Kann versuchen die Situation noch kurz besser zu erklären...Es geht darum eine liste mit Paletten mit verschiedenen Statusen, zu analysieren. vieviel paletten gibt es mit einem gewissen Status? Es gibt aber mehrer Einträge einer Palette, da manche Mehrer Positionen haben. Lagerverwaltung

      Kommentar


      • #4
        meinst du das so?
        Code:
        select count(distinct c.nr) from tab as c where c.status='OK';
        was machen die vielen Gedanken in meinem Kopf ?

        Kommentar


        • #5
          Ja, so sähe es in einer einfachen Abfrage aus, aber ich kann diese selecktion nicht machen, da es ein Subselect wäre. den ganzen String kann ich leider nicht posten. Daher ist es nur möglich wie ich am anfang beschrieben habe!
          Zuletzt geändert von Cyberbob_at_tot; 11.04.2006, 11:43.

          Kommentar


          • #6
            mir ist nicht klar worauf du hinaus willst. kannst du nicht genauere angaben machen: tabellen-struktur, ev. beispieldaten, gewünschtes ergebnis
            was machen die vielen Gedanken in meinem Kopf ?

            Kommentar


            • #7
              Kann ich leider nicht, da es Firmeninterne Daten sind. Aber ich versuche es allgemein auszudrücken.

              Tabelle
              Nr Status Artikel
              1 OK x
              1 OK x
              2 Def y
              3 Def y
              4 OK y

              Da ich schon die Artikel aus einer anderen Tabelle selectiere und mit dieser Verbinde kann ich kein Subselect machen.

              Ergebniss
              Artikel Status OK Status Def
              x 1 0
              y 1 2

              So soll es sein, mein Problem ist nun bei dem Status Def die 0, bei mir erscheint dort nämlich 1. Weil die 0 auch ein eintrag ist bei Count

              Besser kann ich es leider nicht darstellen!

              MFG

              Cyberbob

              Kommentar

              Lädt...
              X