nach zwei oder mehr bestimmten werten suchen/abfragen ??

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

  • nach zwei oder mehr bestimmten werten suchen/abfragen ??

    Hallo !

    Ich habe folgendes Problem, ich möchte eine abfrage von einer Rechnungstabelle aus unserer Buchhaltung machen

    meine abrage ist jetzt folgendermassen
    PHP Code:
    $query ="SELECT SUM(GESPREIS) AS OPS FROM rechnungen where KUNDENNR = $checkknd"
    möchte jetzt aber das bei in den FELD STATUS nach 5 werten gesucht wird

    rechnung, r-buchung,1.mahnung,2.mahnung,3.mahnung

    wenn ich einen wert nehme funktioniert das so
    PHP Code:
    $query ="SELECT SUM(GESPREIS) AS OPS FROM rechnungen where KUNDENNR = $checkknd and STATUS ='rechnung'"
    dann zum abschluss möchte ich dann noch das wenn im Feld FIRM='bezahlt' vorkommt das dieses nicht gezählt wird !

    das hätte so gemacht:

    PHP Code:
    $query ="SELECT SUM(GESPREIS) AS OPS FROM rechnungen where KUNDENNR = $checkknd and STATUS ='rechnung' and not FIRM='bezahlt'"
    so funktioniert es ja auch nur eben mit einem Status (rechnung) möchte aber das wenn einer von dem 5 zutrifft das es richtig rauskommt !

    kann mir da Bitte jemand einen Tipp geben ?

    mfg.
    erti

  • #2
    so schwierig is das aber nicht... du kannst im Übrigen boolsche Ausdrücke auch Klammern also z.B.
    WHERE a = b AND (c = d OR e = f)
    aber für deinen Fall vielleicht noch einfacher:
    PHP Code:
    SELECT SUM(GESPREIS) AS OPS FROM rechnungen WHERE KUNDENNR $checkknd AND status IN ('rechnung','r-buchung','1.mahnung','2.mahnung','3.mahnung') AND FIRM != 'bezahlt' 

    Comment


    • #3
      Hallo !

      Ja, ich hab ein wenig kompliziert gedacht das mit der summe funktioniert aber leider zählt er mir die bezahlte rechnung jetzt nicht mehr weg !


      AND FIRM != 'bezahlt'

      funktioniert leider nicht ! da er jetzt nur mehr die die Summe der bezahlten anzeigt, bei der summe sollte aber der noch Offene Betrag rauskommen !

      mfg.
      erti

      Comment


      • #4
        Das kann einen ganz schön verwirren...also:
        Du möchtest alle Beträge einer Kundennummer zusammenzählen, bei denen das Feld `FIRM` nicht auf 'bezahlt' gesetzt ist. Aus deiner Antwort entnehme ich also, dass es sich bei diesen Datensätzen um offene Rechungen handelt. Aber:
        PHP Code:
        AND FIRM != 'bezahlt' 
        prüft genau auf diesen Umstand. Wenn nicht (!=) 'bezahlt'. Ein Test (so trivial er auch war) hat das (wie erwartet) bestätigt

        Also schau da nochmal in Ruhe drüber, sollte so stimmen, denn
        da er jetzt nur mehr die die Summe der bezahlten anzeigt
        steht in striktem Gegensatz zu der Logik des Statements.

        Comment


        • #5
          Besten Dank !

          habs gelöst.


          mfg.
          erti

          Comment

          Working...
          X