Come posso aggiungere tutti i valori delle colonne al filtro personalizzato in JMP Query Builder?Buongiorno signore o signora,
Ciò che sto cercando di fare è estrarre una tabella dati dal primo database utilizzando una query SQL, quindi voglio inserire i valori di una colonna della tabella nei filtri personalizzati nel secondo JMP Query Builder.
Ho provato a ottenere i valori in Col Serial nella tabella dati WO estratti dal primo database come di seguito,
Col_Values = Tabella dati( "WO" ):Serial << Ottieni valori;
Quindi, prova a inserire il valore nel filtro personalizzato per Col part_id in JMP Query Builder nel secondo database.
Dove( Personalizzato( "part_id in (Col_Values)", UI( Personalizzato( Base( "Continuo" ) ) ) ) )
Ma non ha funzionato.
Vi sarei davvero grato se potessi trovare un modo per farlo.
Grazie in anticipo.
Accesso ai datiRe: Come posso aggiungere tutti i valori delle colonne al filtro personalizzato in JMP Query Builder?Questo ti darà tutti i valori dalla tabella dati
col_values=data table("WO")[0,0]R: Come posso aggiungere tutti i valori delle colonne al filtro personalizzato in JMP Query Builder?Non sono sicuro del punto in cui riscontri problemi, ma per prima cosa procurati l'elenco dei valori univoci dalla tua colonna.
Utilizza un array associativo (non funziona con i float) e può essere lento se hai molti dati (riordina anche i tuoi dati)
Names Default To Here(1);
dt = open("$SAMPLE_DATA/Big Class.jmp");
uniq_age = Associative Array(Column(dt, "age")) << get keys;
Usa summary, trasformerà i numeri in stringhe, il che è una buona cosa in questo caso
Names Default To Here(1);
dt = open("$SAMPLE_DATA/Big Class.jmp");
Summarize(dt, uniq_age = By(:age));
Oppure utilizzare la piattaforma Riepilogo e l'indicizzazione della tabella dati/ottenimento dei valori.
Quindi trasforma quell'elenco in una stringa usando concat items e costruisci la tua query string. Potresti dover valutare il valore ma non sono sicuro che sia necessario
Names Default To Here(1);
dt = open("$SAMPLE_DATA/Big Class.jmp");
Summarize(dt, uniq_age = By(:age));
uniq_age_in = Concat Items(uniq_age, ", ");
//uniq_age_in = "'" || Concat Items(uniq_age, "', '") || "'"; // note that if you have string, you need to add quotes
custom_sql_template = "part_id in (¤uniq_age_in¤)";
custom_sql = Eval Insert(custom_sql_template, "¤");
// your sql thing
Where(Custom(custom_sql, UI(Custom(Base("Continuous")))));
// or if evaluation is necessary
Eval(EvalExpr(
Where(Custom(Expr(custom_sql), UI(Custom(Base("Continuous")))));
));
Re: Come posso aggiungere tutti i valori delle colonne al filtro personalizzato in JMP Query Builder?Ciao,
Grazie mille per la risposta. Devo modificare leggermente lo script come di seguito, ma nel complesso funziona perfettamente come voglio. Apprezzo molto il tuo aiuto.
Grazie,
Tabella dati( "WorkOrder_Serial" ) << Nuova colonna( "WO_SN",
Carattere,
"Nominale",
Formula( "'" || :serial || "'")
);
//Ho creato una nuova colonna con le virgolette perché funziona bene.
Riepilogo(Tabella dati( "WorkOrder_Serial" ), SN = Per( :WO_SN ) );
uniq_age_in = Concat Elementi( SN, "," );