none
Zwei Filter für die gleiche "Spalte" RRS feed

  • Frage

  • Guten Tag, ich habe eine Tabelle aus der ich zweimal in der gleichen Spalte Filtern möchte, zb. in meinem Fall habe ich eine Liste mit Mitarbeiter kürzeln, es sieht bisher folgendermaßen aus:

    SELECT
    SUM([Test Firma$Verkaufszeile].Betrag) AS Sum_Betrag
    ,[Test Firma$Verkaufszeile].Auftragstyp
    ,COUNT([Test Firma$Verkaufszeile].Reisendencode) AS Count_Reisendencode
    FROM
    [Test Firma$Verkaufszeile]
    WHERE
    [Test Firma$Verkaufszeile].Auftragstyp = N'RÜCK'
    AND [Test Firma$Verkaufszeile].Reisendencode = N'AV'
    GROUP BY
    [Test Firma$Verkaufszeile].Auftragstyp

    In diesem Fall habe ich auf AV gefiltert wie es sein soll, aber im Reisendencode haben wir noch andere kürzel zb. TS, wie kann ich beide FIlter anwenden? wenn ich den anderen Filter einfach unten drunter packe, gibt er nichts aus, weil es keine Spalte mit beiden Kürzeln gibt.

    Danke für jede Hilfe.

    Zum Verständnis, er soll alle Zeilen untereinander ausgeben mit der Summe und daneben dem Kürzel, in meinem Fall gibt er aber nur eins aus

    Mittwoch, 29. Januar 2020 13:10

Alle Antworten

  • Hi,

    um in einer Spalte auf mehrere mögliche Werte zu filtern, bietet sich bspw. IN ( ... ) an. In deinem Fall also bspw. so:

    AND [Test Firma$Verkaufszeile].Reisendencode IN ( N'AV', N'TS', ... )

    Falls das nicht das ist, was Du meintest, poste bitte deine Tabellenstruktur als CREATE TABLE Statement, Beispieldaten als INSERT INTO Statements und das gewünschte Ergebnis, ausgehend von exakt diesen Beispieldaten.


    Gruß, Stefan
    Microsoft MVP - Visual Developer ASP/ASP.NET (2001-2018)
    https://www.asp-solutions.de/ - IT Beratung, Softwareentwicklung, Remotesupport

    Mittwoch, 29. Januar 2020 13:40
    Moderator
  • Danke, das war EXAKT wo nach ich gesucht habe. Viele Grüße!
    Mittwoch, 29. Januar 2020 14:49
  • Alternativ kann man auch OR verwenden:

    AND ([Test Firma$Verkaufszeile].Reisendencode = N'AV'
    OR [Test Firma$Verkaufszeile].Reisendencode = N'TS')

    Hierbei muss man natürlich Klammern setzen, da das AND stärker bindet als das OR.


    Einen schönen Tag noch, Christoph - http://www.insidesql.org/blogs/cmu

    Mittwoch, 29. Januar 2020 14:50
    Beantworter