SQL 쿼리 내에서 파일()을 선택하시겠습니까?모두 안녕
처음 올리는 글이니 편하게 봐주세요 
JMP 내에서 두 개의 테이블을 결합하고 싶습니다. 첫 번째는 분광계에서 출력되는 데이터 테이블이고 다른 하나는 참조 테이블입니다. 테이블의 조인 키가 정확히 일치하지 않아서 추가했습니다. 조건에서 사용할 참조 테이블에 최대 및 최소 키 열을 추가합니다((if (key > min key) 및 (key < max key)가 다른 참조 테이블 열을 이 행에 조인하는 경우).
나는 이전에 JMP 쿼리 빌더를 사용하여 이들을 결합한 적이 있으며 꽤 잘 작동합니다. 그러나 지금 이 쿼리에 pick 파일 개체를 통합할 수 있는지 궁금합니다. 본질적으로 나는 사용자가 다음을 원합니다.
- 쿼리 실행
- 분석할 파일에 대한 팝업을 가져옵니다.
- 그런 다음 쿼리가 실행되어 minkey - maxkey 영역에 속하는 참조 테이블에 모든 키를 일치시킵니다.
- 그런 다음 사용자는 쿼리가 조인할 수 있었던 추가 열과 함께 입력 테이블을 다시 가져옵니다.
나는 며칠 동안 주위를 둘러 보았고 기쁨이 없었습니다. 아래 스크립트는 파일 선택 입력을 요청하고 테이블만 반환하며 조인을 시도하지 않습니다.
모든 도움/지침을 부탁드립니다.
New SQL Query(
Version( 130 ),
Connection( "JMP" ),
JMP Tables(
["Reference Table" =>
"ReferenceTablePath",
"Input Data" =>
Open(
Pick File(
"Select JMP File",
"InputData Directory Path",
{"All Files|*"},
1,
0,
"newJmpFile.jmp"),
columns(
New Column( "Key", Numeric, "Continuous", Format( "Best", 12 ) ),
New Column( "Intensity", Numeric, "Continuous", Format( "Best", 12 ) )
),
Import Settings(
End Of Line( CRLF, CR, LF ),
End Of Field( Tab, CSV( 0 ) ),
Strip Quotes( 1 ),
Use Apostrophe as Quotation Mark( 0 ),
Use Regional Settings( 0 ),
Scan Whole File( 1 ),
Treat empty columns as numeric( 0 ),
CompressNumericColumns( 0 ),
CompressCharacterColumns( 0 ),
CompressAllowListCheck( 0 ),
Labels( 0 ),
Column Names Start( 1 ),
Data Starts( 25 ),
Lines To Read( "All" ),
Year Rule( "20xx" )))]
),
QueryName( "SQLQuery2" ),
Select(
Column( "Key", "t1" ),
Column( "Intensity", "t1" ),
Column( "Value1", "t2" ),
Column( "Value2", "t2" )
),
From(
Table( "Input Data", Alias( "t1" ) ),
Table(
"Reference Table",
Alias( "t2" ),
Join(
Type( Left Outer ),
GE( Column( "Key", "t1" ), Column( "MinKey", "t2" ) ) &
LE( Column( "Key", "t1" ), Column( "MaxKey", "t2" ) )
)
)
)
) << Run
Re: SQL 쿼리 내에서 파일()을 선택하시겠습니까?안녕 @SamEllick
SQL 쿼리에서 파일 선택 구문에 문제가 있습니다. 저를 도와주실 수 있나요?
New SQL Query(
Version( 130 ),
Connection( "JMP" ),
JMP Tables(
["Limits" =>
<STRONG>"Source(Open(
\!"C:\Jay\JMP\JMP Scripts\Python Scripts\JMP scripts\New folder\New folder\SQL 2\Limits.xlsx\!"</STRONG>,
Worksheets( \!"Limits\!" ),
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( 0 ),
Multiple Series Stack( 0 ),
Import Cell Colors( 0 ),
Limit Column Detect( 0 ),
Column Separator String( \!"-\!" )
)
))",
<STRONG>"SummaryTable" =>
"\C:\Jay\JMP\JMP Scripts\Python Scripts\JMP scripts\New folder\New folder\SQL 2\SummaryTable.jmp"
]</STRONG>
),
QueryName( "SQLQuery11" ),
Select(
Column( "Test Number", "t2" ),
Column( "Test Name", "t2" ),
Column( "Test Units", "t2" ),
Column( "LL", "t2" ),
Column( "UL", "t2" ),
Column( "N", "t2" ),
Column( "Failing Soft Bin", "t1" )
),
From(
Table( "Limits", Alias( "t1" ) ),
Table(
"SummaryTable",
Alias( "t2" ),
Join(
Type( Left Outer ),
EQ( Column( "Test Number", "t2" ), Column( "Test Number", "t1" ) )
& EQ( Column( "Test Name", "t2" ), Column( "Test Name", "t1" ) ) &
EQ( Column( "Test Units", "t2" ), Column( "Test Units", "t1" ) )
)
)
)
) << Run
SQL 쿼리에 두 개의 파일 선택 명령을 갖고 싶습니다.
어떤 제안?
Re: SQL 쿼리 내에서 파일()을 선택하시겠습니까?안녕 @cwillden
걱정하지 마세요. 아이디어 덕분에 제대로 작동시킬 수 있었습니다. 선택 파일 경로를 변수에 저장한 다음 쿼리 내에서 호출했습니다(제안한 대로). 이전에 이것을 시도했을 때 나는 scucess없이 열린 객체도 사용했습니다 (파일 선택 -> 열기 -> SQL 쿼리).
필요한 것 같습니다 : 파일 선택 -> SQL 쿼리.
건배
Re: SQL 쿼리 내에서 파일()을 선택하시겠습니까?안녕 @SamEllick ,
쿼리 외부에서 파일 선택을 시도하고 변수에 경로를 저장해 보셨습니까?또는 쿼리를 시작하고 열린 데이터 테이블을 참조하기 전에 파일을 선택하고 엽니다.
Query Builder에 대한 경험이 거의 없지만 아무도 당신을 도와주지 않은 것이 안타까웠습니다.작업 중인 테이블의 정리된 버전을 게시하여 컨텍스트에서 파악할 수 있도록 할 수 있습니까?