Hi @stan_koprowski ,
Ich habe JMP Query Builder verwendet, um die folgende SQL-Abfrage zu erstellen
Names Default To Here( 1 );
//Prompt to select and open an MS Excel file
dt1 = Open( Pick File( "Select Excel File", "$DOCUMENTS", {"Excel Files|csv;xlsx;xls", "All Files|*"}, 1, 0 ), Invisible );
//Prompt to select an open a JMP data table
dt2 = Open( Pick File( "Select JMP File", "$DOCUMENTS", {"JMP Files|jmp", "All Files|*"}, 1, 0 ), Invisible );
//Perform a left outer join on the tables using the "Name" Column
New SQL Query(
Version( 130 ),
Connection( "JMP" ),
JMP Tables(
["1st_file" =>
"Source(Open( \!"dt1\!",
Worksheets( \!"worksheet\!" ),
Use for all sheets( 1 ),
Concatenate Worksheets( 0 ),
Create Concatenation Column( 0 ),
Worksheet Settings(
1,
Has Column Headers( 1 ),
Number of Rows in Headers( 1 ),
Headers Start on Row( 1 ),
Data Starts on Row( 2 ),
Data Starts on Column( 1 ),
Data Ends on Row( 0 ),
Data Ends on Column( 0 ),
Replicated Spanned Rows( 1 ),
Replicated Spanned Headers( 0 ),
Suppress Hidden Rows( 1 ),
Suppress Hidden Columns( 1 ),
Suppress Empty Columns( 1 ),
Treat as Hierarchy( 1 ),
Multiple Series Stack( 0 ),
Import Cell Colors( 0 ),
Limit Column Detect( 0 ),
Column Separator String( \!"-\!" )
)
))",
"2nd_file" => "Source(Open( \!"dt2\!"))"]
),
QueryName( "Data_Blending" ),
Select(
Column( "Name", "t2" ),
Column( "Enable", "t2" ),
Column( "Type", "t2" ),
Column( "Phase", "t2" ),
Column( "Values", "t3" )
),
From(
Table( "2nd_file", Alias( "t2" ) ),
Table(
"1st_file",
Alias( "t3" ),
Join(
Type( Left Outer ),
EQ( Column( "Name", "t2" ), Column( "Name", "t3" ) )
)
)
)
) << Run;
//Close source files without saving
Close(dt1, "NoSave");
Close(dt2, "NoSave") - Das obige Skript führt Left Join aus.
- Genauer gesagt wird die Spalte "Werte" aus der zweiten Datei in die erste Datei kopiert und eine Data_Blending JMP-Tabelle erstellt.
Das obige Skript funktioniert nur, wenn der Dateiname in die Abfrage eingegeben wird.
Was ist, wenn ich dasselbe Skript für verschiedene Dateien ausführen möchte, ohne den Namen der Referenztabelle zu ändern?
Lassen Sie uns meinen zweiten Dateinamen konstant halten und ich möchte ähnliche Operationen für verschiedene Dateien ausführen.
Ich habe eine andere Excel-Datei "3rd_file" und möchte den Namen in der Abfrage nicht ändern. Gibt es eine Syntax, die den Dateinamen in den roten Kreisteil des folgenden Bildes kopieren kann?

Jede Hilfe/Anleitung ist willkommen.
Hi @Jacksmith12 ,
Für andere, die folgen, ist einer der besten Lehrer für das Schreiben von JSL mit JMP, die Schritte zuerst interaktiv auszuführen und dann JMP zu bitten, das Skript zu schreiben.
Ich möchte vorschlagen, sich einige Lehrvideos mit JMP Query Builder aus unserer Online-Serie anzusehen JMP beherrschen.
Zusätzliche Tutorials zur Verwendung von Data Wrangling JMP Query Builder aus unserer Discovery Summit-Reihe .
Um den Join zwischen zusätzlichen Tabellen zu erweitern, ist der allgemeine Prozess derselbe wie zuvor mit zwei Tabellen gezeigt.
Prost,
Stan