In dieser Beispieltabelle versuche ich, die Zeile mit dem Wert 2 in :Number auszuwählen, dann den Wert "A" aus :letter zu holen und dann alle Zeilen auszuwählen, die "A" in :Letter enthalten.


Ich habe dieses Skript geschrieben, aber es funktioniert nicht.
dt= current datatable();
dt <<SELECT where=""></SELECT>
Blick auf das Protokoll
s = {"A", "A", "A", "B", "B", "B"};
Und am Ende des Skripts wurden keine Zeilen ausgewählt.
Was schief gelaufen ist?
Vielen Dank
Ich denke, Sie sollten alle Zeilen basierend auf Ihrem Skript auswählen, da s alle Werte aus der Buchstabenspalte enthält, nicht nur diejenigen, die mit dem Buchstaben von Nummer 2 übereinstimmen, und dann prüfen Sie, ob der aktuelle Zeilenbuchstabe in dieser Liste enthalten ist (es ist immer so).
Es gibt viele Möglichkeiten, das zu tun, was Sie wollen. Hier ist die Methode, die ich am wahrscheinlichsten verwenden würde ( Subskription von Datentabellen 
Names Default To Here(1);
dt = New Table("Untitled",
Add Rows(6),
New Column("Letter", Character, "Nominal", Set Values({"A", "A", "A", "B", "B", "B"})),
New Column("Number", Numeric, "Continuous", Format("Best", 12), Set Values([1, 2, 3, 4, 5, 6]))
);
num_rows = dt << Get Rows Where(:Number == 2);
show(num_rows);
letters_of_interest = dt[num_rows, "Letter"];
show(letters_of_interest);
dt << Select Where(Contains(letters_of_interest, :Letter));
Sie können auch << Select Where in Kombination mit << Get Selected Rows verwenden (ein Beispiel Holen Sie sich Werte von Select Where )
Vielen Dank. Ich habe sicherlich den Teil "Get Rows" verpasst.
Ich bin nach ein bisschen Graben auf dieses Skript gekommen
dt= current datatable();
dt <<ROW selection=""></ROW>