Überprüfen Sie, ob Daten in einer anderen Tabelle vorhanden sindHallo, ich habe zwei Tabellen A und B, jede hat eine Spalte „E-Mail“ und „ID“. Ich möchte eine neue Spalte in Tabelle A hinzufügen. Wenn in dieser Zeile in Tabelle B „dieselbe E-Mail-Adresse ODER dieselbe ID“ angezeigt wird, dann „JA“, wenn nein, dann leer. Könnte mir jemand helfen, wie ich dieses Skript schreibe?
Danke schön.
Automatisierung und SkripterstellungVerbraucher- und MarktforschungMassenanpassungQualitäts- und VerfahrenstechnikBetreff: Überprüfen Sie, ob Daten in einer anderen Tabelle vorhanden sindEs klappt! Vielen Dank, Brady!Betreff: Überprüfen Sie, ob Daten in einer anderen Tabelle vorhanden sindJa, du kannst. Ich denke, der einfachste Weg, dies zu erreichen, besteht darin, zunächst einzuschränken, was Sie in die Listen eingeben, indem Sie die Listen nur mit Werten füllen, die in Zeilen vorkommen, in denen Land == USA ist. Siehe die neue Zeile unter dem ersten Kommentar sowie den in den nächsten beiden Zeilen verwendeten Index [r].
Names Default To Here( 1 );
dtA = Data Table( "tableA" );
dtb = Data Table( "tableB" );
//make lists of IDs and emails in table B
r = dtB << get rows where( :country == "US" ); //restrict rows to those where country is US
bIDs = (dtB:ID << get values)[r];
bEmails = (dtB:email << get values)[r];
//use formula to check if anything in the given row of A occurs anywhere in B
dtA << New Column( "bMatch",
character,
formula( If( Contains( bIDs, :ID ) | Contains( bEmails, :email ), "YES", "" ) )
);
dtA:bMatch << Delete Formula;
Betreff: Überprüfen Sie, ob Daten in einer anderen Tabelle vorhanden sindEntschuldigung, mein fehler! Falscher Spaltenname, ich habe es behoben und es hat funktioniert! Vielen Dank!
Eine folgende Frage: Gibt es in Tabelle B eine weitere Spalte wie „Land“, die „USA“ oder „Kalifornien“ enthält? Könnte ich die gleiche JA-Spalte in Tabelle a tun, aber nur, wenn das Land der Tabelle b = USA ist?Betreff: Überprüfen Sie, ob Daten in einer anderen Tabelle vorhanden sindNach meinem Verständnis sollte _ keine Probleme verursachen (zumindest nicht mit JMP14.3 und JMP15.2). Sind Sie sicher, dass Ihre dtB-Datentabelle die Spalte „Email_HASHED“ enthält?
Betreff: Überprüfen Sie, ob Daten in einer anderen Tabelle vorhanden sindDanke schön! Das ist es, was ich suche.
Ich habe einen Fehler mit diesem Skript. Ich frage mich, ob es daran liegt, dass der Spaltenname einen Unterstrich enthält?

Betreff: Überprüfen Sie, ob Daten in einer anderen Tabelle vorhanden sindHallo, wenn ich Ihre Frage richtig interpretiere, möchten Sie in Tabelle A immer dann ein JA, wenn die E-Mail-Adresse oder ID in B erscheint, unabhängig davon, wo diese in Tabelle B erscheinen. Wenn ja, wird dies Folgendes tun:
Names Default To Here(1);
dtA = datatable("tableA");
dtb = datatable("tableB");
//make lists of IDs and emails in table B
bIDs = dtB:ID << get values;
bEmails = dtB:email << get values;
//use formula to check if anything in the given row of A occurs anywhere in B
dtA << new column("bMatch", character, formula(if(contains(bIDs, :ID) | contains(bEmails, :email), "YES", "")));
dtA:bMatch << Delete Formula;
Hier ist eine Beispielausgabe:

Beifall,
Brady
Betreff: Überprüfen Sie, ob Daten in einer anderen Tabelle vorhanden sindIch bin mir nicht sicher, was Sie tun möchten.
Angenommen, dies ist Tabelle A:

und das ist Tabelle B:

Betrachten Sie also user1 in Zeile 1 beider Tabellen. Es gibt zwei verschiedene IDs. Welches soll behalten werden? Oder sollte diese Person zweimal aufgeführt sein? Was passiert außerdem mit id=84? Sollte es zwei Zeilen geben oder sollte es die E-Mail-Adresse von Benutzer7 enthalten?