SQL where 필터에 대한 사용자 입력을 생성하는 방법은 무엇입니까?그래서 ODBC를 사용하여 SNOWFLAKE에 연결하고 일부 스크립트를 실행하고 있습니다. ppl이 더 쉽게 사용할 수 있도록 WHERE 필터 목록이 있는 UI 창을 어떻게 설정할 수 있는지 궁금합니다.
SQL 스크립트에 입력할 변수에 매핑할 팝업이 있는 목록을 구상 중입니다. 가능한?

//**SNOWFLAKE QUERY****************************************************************************************************
uid = Get Environment Variable( "USERNAME" );
sql_state="
/********************************/
SELECT distinct
column1
,column2
,etc
from Database
WHERE 1=1
and filter1 like '%qwerty%'
and filter2 in ('a', 'b', 'c')
--and filter3 = '54168'
--and filter4 <> 'that_thing'
--and filter5 not in ('group1','group2')
and Date >= CURRENT_DATE - 30 /*go back 30 days*/
";
snowflake_spc = Open Database( "DSN=SNOWFLAKE1;UID=account;PWD=password;", sql_state );
/****************************************************************************************************/
다른스크립팅Re: SQL where 필터에 대한 사용자 입력을 생성하는 방법은 무엇입니까?이것은 쉽게 수행됩니다 SQL 쿼리 빌더 .
필터에는 실행 시 프롬프트할 필터에 옵션이 있으며 JMP에서 프롬프트를 표시합니다. 자신의 대화 상자를 만들 필요가 없습니다.

자세한 내용을 읽고 예제를 살펴보십시오. SQL 쿼리 작성 .
Re: SQL where 필터에 대한 사용자 입력을 생성하는 방법은 무엇입니까?이것은 확실히 가능합니다. jsl을 사용한 코딩 기술과 시스템이 얼마나 복잡한지에 따라 많이 달라집니다(단순한 where 절로 필터링하는 것이 매우 간단할 수 있음).
몇 가지 생각해 볼 사항:
- 템플릿 문자열을 사용한 다음 Eval Insert를 사용하여 거기에 값을 추가합니다(또는 문자열을 함께 연결).
- like/=를 어떻게 처리하시겠습니까? 표시 상자(라디오 상자, 확인란, 콤보 상자) 또는 텍스트를 구문 분석하는 방법을 나타내는 텍스트 편집 상자의 특정 문자?
- 여러 유사 조건(어떤 것과 같은 filter1 또는 무언가와 같은 filter2)을 처리하는 방법은 무엇입니까?
- 어떻게 처리하지?
- 모달 창을 사용하면 스크립트 흐름을 쉽게 처리할 수 있습니다.
- 나중에 시스템이 어떻게 확장될지 생각해 보세요.
- 스크립팅 가이드와 스크립팅 인덱스가 큰 도움이 될 것입니다. 또한 JMP 도움말은 다양한 디스플레이 상자에 도움이 됩니다.
다음은 템플릿 문자열을 사용한 다음 eval 삽입을 사용하여 최종 SQL을 빌드하는 매우 간단한 예입니다.
Names Default To Here(1);
sqlTemplate = "\[
select *
from *
where 1=1
^filter1Str^
^filter2Str^
]\";
filter1Str = "";
filter2Str = "";
rbSel = {"like", "in", "=", "not in", "not like"};
ex = New Window("Dialog() example",
<<MODAL></MODAL>
사용자 입력과 사용자 인터페이스의 선택에 따라 완전한 SQL 쿼리를 빌드하는 매우 유사한 시스템을 하나 구축했습니다(현재 시간이 있을 때 전체 재작성을 하고 있습니다. 확장이 너무 어려워서).