Warum beschränkt sich Sales (CALCULATE / FILTER) nicht auf die Produktfarbe für diese Zeile?

Variable
DEFINE
    MEASURE Sales[Average Sales Amount] =
        AVERAGEX ( Sales, 'Sales'[Quantity] * 'Sales'[Net Price] )
EVALUATE
ADDCOLUMNS (
    VALUES ( Product[Color] ),
    "Sales", CALCULATE(
        [Average Sales Amount],
        FILTER ( Sales, Sales[Quantity] > 3 )
    )
)

Zunächst wird eine eindeutige Liste von Produkten erstellt, die den aktuellen Filterkontext berücksichtigen (da VALUES verwendet wird).

Anschließend wird jede Zeile der obigen Liste durchlaufen und die BERECHNUNG durchgeführt.

BERECHNEN Ich verstehe, fügt die aktuelle Zeile (Farbe) zum Filterkontext hinzu. In CALCULATE versuche ich zu verstehen, warum sich die Verkäufe in FILTER nicht auf die jeweilige Farbe beschränken, obwohl sich die jeweilige Farbe im Filterkontext befindet.

Es scheint, dass beim Übergang von CALCULATE durch Hinzufügen der Farbe (aus dem Zeilenkontext) zum Filterkontext die Farbe aus irgendeinem Grund die Verkaufstabelle nicht filtert.

Sergiom

Für die Reihenfolge der Ausführung der Schritte von CALCULATE wird zuerst der FILTER im vorhandenen Filterkontext vor dem Kontextübergang ausgewertet.

Dies bedeutet, dass die Verkaufstabelle noch nicht nach Farbe gefiltert ist.

Dann passiert der Filterkontext und fügt den Filter über dem aktuell iterierten 'Produkt' [Farbe] zum Filterkontext in CALCULATE hinzu.

Schließlich wird der Filter über Verkäufe angewendet.

Da dies ein Filter über die gesamte Verkaufstabelle ist, wird die erweiterte Tabelle verwendet.

Dies bedeutet, dass alle über der erweiterten Tabelle "Vertrieb" vorhandenen Dateien ersetzt werden.

Die erweiterte Tabelle "Vertrieb" enthält die Tabelle "Produkt", da zwischen Produkt und Vertrieb eine Eins-zu-Viele-Beziehung besteht.

Das Ergebnis ist, dass der durch den Kontextübergang festgelegte Filter über Produkt [Farbe] entfernt wird.

Dieser Artikel stammt aus dem Internet. Bitte geben Sie beim Nachdruck die Quelle an.

Bei Verstößen wenden Sie sich bitte [email protected] Löschen.

bearbeiten am
0

Lass mich ein paar Worte sagen

0Kommentare
LoginNach der Teilnahme an der Überprüfung

Verwandte Artikel

Warum beschränkt sich die Unterabfrage "EXISTS" nicht auf beide WHERE-Bedingungen?

Das Abrufen von Datensätzen in der Liste in select beschränkt sich nicht auf die Liste in mysql

MySQL-Abfrage beschränkt sich auf bestimmte Daten - warum?

R: Die manuelle Zuweisung von Farben in ggplot beschränkt sich auf wenige Farben

Wie schreibe ich bedingte Anweisungen in R, die nicht auf die Funktion print() beschränkt sind?

Warum dies geschieht, beschränkt sich der Umfang der res.redirect () -Methode auf die findByIdAndRemove-Methode in Express

Warum ist die Tupelformatierung in Rust auf 12 Elemente beschränkt?

Warum ist die AddMultiplicationEquality auf nur 2 Variablen beschränkt?

Warum befinden sich diese beiden Elemente NICHT in derselben Zeile?

Meine UPDATE-Anweisung mit WHERE EXISTS beschränkt sich nicht auf die Ergebnisse der SELECT-Anweisung

Warum füllt sich diese Form nicht ()?

Wie ändere ich meine vorhandenen R-Codes so, dass die Ausgabe nur auf diese spezielle Bedingung beschränkt ist?

Warum funktioniert diese Struktur, die einen Zeiger auf sich selbst enthält, nicht richtig?

Wie füge ich eine Tabelle hinzu, die auf nur eine Zeile in mysql / django beschränkt ist?

Warum unterscheidet sich die Signatur für diese beiden Funktionen?

Kivy - Warum wirkt sich diese (scheinbar) nicht verwandte Änderung des Schaltflächenstatus auf die Fähigkeit aus, eine Liste zu löschen? Python

Warum wirkt sich das OnDrawItem-Ereignis für eine ListView nicht auf die Entwurfszeitumgebung aus?

C Frage: Warum beschränkt sich meine Zeichenfolge mit 20 Längen auf 6 Zeichen?

CSS-Breite 100% auf Browserfenster beschränkt (erstreckt sich nicht auf den rechten Bildlaufbereich)

Python beschränkt sich auf einen Bereich

Warum wirkt sich dplyr :: mutate einer Funktion nur auf die erste Zeile aus, nicht auf den Rest?

Warum bezieht sich diese interne Funktion auf ein globales Objekt im Knoten, wenn die Funktion selbst nicht global definiert ist?

Google beschränkt die API für die automatische Vervollständigung von Javascript auf Vorschläge

Warum ändern sich F-Strings nicht, wenn sich Variablen, auf die sie verweisen, ändern?

Warum befinden sich diese Blockelemente in derselben Zeile?

Webpack beschränkt sich nur auf die Verwendung von ES6-Modulen

Die Doktrin beschränkt sich auf eine Zahl, bei der Duplikate ignoriert werden

Plotband nicht auf xAxis beschränkt, zeichnet für den gesamten Graphen

Warum wirkt sich die Reihenfolge, in der ich Filter verwende, in R (dplyr) auf die Ausgabe aus?

TOP Liste

  1. 1

    Modbus Python Schneider PM5300

  2. 2

    Glassfish v3.0.1 im Vergleich zu Oracle GlassFish Server 3.0.1 - Gibt es einen technischen Grund, die kommerzielle Version zu verwenden?

  3. 3

    Wie schließe ich mehrere Ordner mit der Variablen EXTRA_ARGS aus?

  4. 4

    Wie kann eine gleichmäßige Lastverteilung in ElasticSearch mit Indizes mit unterschiedlicher Anzahl von Shards erreicht werden?

  5. 5

    Wie kann man eine Multi-Container-Anwendung in Steuerkarten erstellen?

  6. 6

    ElasticSearch - Knotensperren konnten nicht abgerufen werden

  7. 7

    Python: Spalten mit demselben Namen zusammenführen, wobei der Mindestwert beibehalten wird

  8. 8

    Elasticsearch startet nicht nach dem Laden in viele Daten

  9. 9

    Ärgerliches Problem mit yaml, das ich nicht lösen kann

  10. 10

    Wie Verwenden von Httpclient mit jedem SSL-Zertifikat, egal wie „schlecht“ es ist

  11. 11

    Wie vergleicht man scala.xml-Knoten richtig?

  12. 12

    ElasticSeach Auto Complete mit dem Vervollständigungsvorschlag, um das vollständige Dokument zurückzugeben

  13. 13

    Wie füge ich eine Spalte in einer Zeile in der Ansible Jinja2-Vorlage mit der for-Schleife hinzu?

  14. 14

    HTTPS-Verbindung mit Moneris-Servern in Curl

  15. 15

    Unity Build-Fehler: Der Name 'EditorUtility' ist im aktuellen Kontext nicht vorhanden

  16. 16

    Bester Crawler, um festzustellen, ob er mit Technologien gebaut wurde?

  17. 17

    So erhalten Sie eine gleichmäßige Höhe für alle Eingabefelder

  18. 18

    Wie kann ich den Kaskadenmodus global einstellen?

  19. 19

    Eclipse Oxygen - Projekte verschwinden

  20. 20

    Wie konvertiere ich einen Vektor von Bytes (u8) in eine Zeichenfolge?

  21. 21

    ElasticSearch BulkShardRequest ist aufgrund von org.elasticsearch.common.util.concurrent.EsThreadPoolExecutor fehlgeschlagen

heißlabel

Archiv