Tabellenwerte zu einer String-Variablen verkettenIch habe eine Zeichentabelle und möchte eine Zeichenfolgenvariable der verketteten Werte jeder Spalte erzeugen, die als Argument einer Funktion verwendet werden soll.
Nehmen wir an, dies ist meine Datentabelle:
Spalte1 Spalte2
Artikel1 Wert1
Artikel2 Wert2
Item3 Wert3
Item4 Wert4
Artikel5 Wert5
. . . . . .
Die Tabelle hat 2 Spalten, aber eine beliebige Anzahl von Zeilen. Die Ausgabe, die ich suche, ist diese:
strColumn1 = 'Element1','Element2','Element3','Element4','Element5'
strColumn2 = 'Wert1', 'Wert2', 'Wert3', 'Wert4', 'Wert5'
Jede Hilfe wird sehr geschätzt!
Betreff: Tabellenwerte zu einer String-Variablen verketten@RonSwanson ,
Stellen Sie einfach sicher, dass der Spaltenname richtig geschrieben ist. Löschen Sie vorzugsweise das Leerzeichen im Namen der Spalte.
Betreff: Tabellenwerte zu einer String-Variablen verkettenSieht so aus, als ob Sie versuchen, eine SQL IN-Liste zu erstellen.Hier ist ein anderer Ansatz:
dt = New Table( "Untitled 81", Add Rows( 2 ),
New Column( "Column 1", Character, "Nominal", Set Values( {"Item1", "Item2"} ) ),
New Column( "Column 2", Character, "Nominal", Set Values( {"Value1", "Value2"} ) )
);
col1_list = column(dt, "Column 1") << get values;
col2_list = column(dt, "Column 2") << get values;
strcolumn1 = "('" || concat items(col1_list, "','") || "')";
strcolumn2 = "('" || concat items(col2_list, "','") || "')";
Wenn eine der Spalten numerisch ist, ist die von get values zurückgegebene Liste eine Matrix, und Sie müssen die Matrix durchlaufen, um alle Elemente in Zeichenfolgen umzuwandeln.
Betreff: Tabellenwerte zu einer String-Variablen verkettenDer Col1Vals-Befehl funktionierte, erhielt jedoch den folgenden Fehler bei der Verwendung des Col2Vals-Befehls:
Col2Vals = dt : Spalte 2 << Werte bekommen ;
Der bereichsbezogene Datentabellenzugriff erfordert eine Datentabellenspalte oder -variable im Zugriff oder in der Auswertung von 'dt:Column 2' , dt:Column 2
Im folgenden Skript Fehler markiert mit /*###*/
Col2Vals = dt:Spalte 2 << Werte abrufen
Betreff: Tabellenwerte zu einer String-Variablen verketten@RonSwanson ,
Vielleicht so etwas
dt = Current Data Table();
Col1Vals = dt:Column 1 << get Values;
Col2Vals = dt:Column 2 << get Values;
// If you are specific about how the output looks, you can try the following, else
// the above lines should give you what you want
Str1 = "";
Str2 = "";
for(i = 1, i <= N Items(Col1Vals), i++,
If(i == 1,
Str1 = Str1 || Col1Vals[i];
Str2 = Str2 || Col2Vals[i];
,
//else
Str1 = Str1 || "," || Col1Vals[i];
Str2 = Str2 || "," ||Col2Vals[i];
);
);