DAX Formel gesucht

Retsam-Master

Banned
Registriert
Jan. 2019
Beiträge
1.100
Hallo zusammen

Ich suche eine DAX Formel da ich schon einiges versucht habe und nicht zur Lösung komme

und zwar sehen meine Tables wie folgt aus:

Table 1 hat spalte:
MEGA_ID1

Table 2 hat spalte:
MEGA_ID1
INFO_ID1

Table 3 hat spalte:
INFO_ID1
MEGANAME1

Ich möchte nun in Table 1 den MEGANAME1 zu jedem MEGA_ID1 in einer neuen Spalte haben.

Ich habe es mit Lookupvalue versucht aber das ist mir nicht möglich gewesen.
Eine Verbindung mit Beziehungen ist auch nicht möglich da ich schon andere Beziehungen habe

Wie kann ich das bewerkstelligen?
(genutzt wird PowerBi)
Brauche ich einen anderen Befehl oder ist meine vorgehensweise falsch?
Das Problem ist bei Lookupvalue das ich nicht jede Table angezeigt bekomme (als ob ich nicht darauf imme rzugreifen kann mit dem Befehl) also wollte ich es mit related versuchen, da ging es irgendwie auch nicht.
 
Irgendwie steh ich auf dem Schlauch: die von Dir angestrebte Zuordnung ist eine 1:1 Beziehung und damit eine der grundlegendsten Funktionen einer Datenbankanwendung. Die IDs müssen hier einfach in Beziehung gesetzt werden und dann "simple as it is" mit einer Art SELECT (ich kenn PowerBi nicht) abgefragt werden.
 
@xdave78
Nein 1:1 ist leider falsch.
den Table 1 kann zu Table 2 Mehrere Beziehungen haben. also *:1
Logisch ist der Spaltenname 1:1 gleich muss es ja sonst würde es garnicht funktionieren.

ABER ..Das spielt keine Rolle
den mir fehlt genau das was du auch nicht weisst.
WIE stelle ich die Verbindung ohne Beziehungen her in einer DAX Formel.

Mit beziehungen könnte ich jetzt alle Tables verbinden und es würde einfach funktionieren.
Aber zwischen diesen Tables sind weitere Tables deswegen funktionierts nicht.

INFO:
Ich will hier an dieser stelle keine Diskussionen starten. den es geht mir lediglich um die DAX Formel und wie ich da die Verbindung setze... bzw. wie ich eine Spalte hinzufügen mit der gesetzten Verbindung
 
Man nennt es dann 1:n Beziehung.
Es spielt sehr wohl eine Rolle. Was ich in Frage stelle ist ein Basiswissen zu relationalen DB-Systemen und somit der Herangehensweise an das Problem.

Anders:
1.) Wie / Wo liegen die Daten überhaupt vor?
2.) Warum machst Du die Abfrage nicht ganz simpel über eine SQL Anweisung?
3.) SVERWEIS?
 
xdave78 schrieb:
Man nennt es dann 1:n Beziehung.
Es spielt sehr wohl eine Rolle. Was ich in Frage stelle ist ein Basiswissen zu relationalen DB-Systemen und somit der Herangehensweise an das Problem.

Anders:
1.) Wie / Wo liegen die Daten überhaupt vor?
2.) Warum machst Du die Abfrage nicht ganz simpel über eine SQL Anweisung?
3.) SVERWEIS?

ob * oder n ist egal ich kann auch a sagen... steht halt für "mehrere / alle / viele" usw.

Die Daten importier ich in PowerBi

Würde gerne über SQL Anweisungen arbeiten aber Powerbi unterstützt diese klassischen Anweisungen nicht
(Da Powerbi jede Datenbankanbindung unterstützt und nicht nur sql)

Ich brauch hier eine DAX formel .... und wen nicht jetzt dan später.
Klar man kann auch hier wieder 150 TH lang diskutieren aber es muss halt nun mal DAX sein
 
Habs nicht in PowerBI ausprobiert, aber in Excel sieht die Formel so aus:
Code:
XVERWEIS([@[MEGA_ID1]];Tabelle2[MEGA_ID1];Tabelle2[MEGANAME1])
das müsste sich so auf LOOKUPVALUE übertragen lassen.
 
Grantig schrieb:
Habs nicht in PowerBI ausprobiert, aber in Excel sieht die Formel so aus:
Code:
XVERWEIS([@[MEGA_ID1]];Tabelle2[MEGA_ID1];Tabelle2[MEGANAME1])
das müsste sich so auf LOOKUPVALUE übertragen lassen.

Das kann so nicht stimmen es müsste umgekehrt sein ausserdem hast du Meganame aus der Tabelle 2 genommen wo dies nicht existiert das heisst es fehlt noch ein zusätzlicher Verweis.
Den ich will ja aus Tabelle 3 den Meganamen1 in Tabelle 1 als neue spalte bringen.

In DAX wäre das "theoretisch" so nach "deinem" Beschreib:

Theorie:
Neue Spalte = LOOKUPVALUE (das ist meine ZielTabelle[und die spalte die ich brauche]; hier muss eine verknüpfungstabelle zu Table 2 [und hier die spalte]; dann irgendwie die neue Spalte mit Table2 zu Table 1 Verknüpfen???!!!!; und irgendwie beenden)

Praktisch:
Neue Spalte = LOOKUPVALUE (Tabelle3[MEGANAME1]; Tabelle3[INFO_ID]; ?Verknüpfenzu? Tabelle2[INFO_ID]; Tabelle2[MEGA_ID];AKTUELLES TABEL)

Verstehst du was ich meine?
voll kompliziert :D
 
Ja ich kapier was du meinst.
Du kannst einfach LOOKUPVALUE funktionen verschachteln um quasi das Verhalten von nem SQL join nachzubauen.

In Excel würde das so aussehen:
Code:
XVERWEIS(XVERWEIS([@[MEGA_ID1]];Tabelle2[MEGA_ID1];Tabelle2[INFO_ID1]);Tabelle3[INFO_ID1];Tabelle3[MEGANAME1])

In PowerBI müssten die LOOKUPVALUE parameter genau "andersrum" sein, weil die Reihenfolge der Parameter genau umgekehrt ist im Vergleich zu XLOOKUP (bzw. XVERWEIS)

Sollte dann ungefähr so klappen (ungetestet):
Code:
LOOKUPVALUE(Tabelle3[MEGANAME1];Tabelle3[INFO_ID1];LOOKUPVALUE([@[MEGA_ID1]];Tabelle2[MEGA_ID1];Tabelle2[INFO_ID1]))
 
Grantig schrieb:
Sollte dann ungefähr so klappen (ungetestet):
Code:
LOOKUPVALUE(Tabelle3[MEGANAME1];Tabelle3[INFO_ID1];LOOKUPVALUE([@[MEGA_ID1]];Tabelle2[MEGA_ID1];Tabelle2[INFO_ID1]))

Also ab Hier:
LOOKUPVALUE(Tabelle3[MEGANAME1];Tabelle3[INFO_ID1];LOOKUPVALUE([@[MEGA_ID1]];Tabelle2[MEGA_ID1];Tabelle2[INFO_ID1]))

Mach es in DAX irgendwie keinen Sinn da ich nur Fehler kriege.
Weder will er 2 mal ein [[]] schlucken noch ein @
 
Zurück
Oben